❶ 在WORD里以WEB版式列印
另存為 保存模式選篩選過的網頁
❷ word里web視圖怎麼全部列印出來求救!!
web視圖是作為網頁瀏覽用的,所以列印的時候有兩個選擇,一個是採用橫排列印,另一個就是切換成頁面視圖,然後調整內容(比如表格,可以右鍵點擊表格選擇「自動調整」→「根據窗口調整表格」然後再進行細微調整)到適合列印的形式。
❸ 如何實現HTML的列印和預覽
如何實現HTML的列印和預覽
HTML的列印和預覽向來是個難題,但自從IE5.5推出後,情況大有改觀。你可以利用其「列印模板」功能,實現自己的預覽窗口和控制列印。「列印模板」的使用方法請參考MSDN Library中的Web Development > Programming and Reusing the Browser > Print Templates目錄下的文章。從微軟的網站上還可以下載到一個不錯的例子,示例如何一步步由淺入深地使用Print Template
你會發現,要自己實現一個功能完善的列印模板也並非易事。IE瀏覽器本身帶的列印模板做得還不錯,能否在它的基礎上加上自己的定製功能呢?答案是肯定的,至少從技術上看是這樣(不考慮版權問題)。下面就介紹這偷懶的招。
用Visual Studio打開x:Program FilesInternet ExplorerMUI804SHDOCLC.DLL,會看到其資源目錄。其中HTML/PREVIEW.DLG就是IE所帶的列印模板了。把它export(導出)出來,把文件擴展名改成HTM,打開看看,是不是特刺激?PREVIEW.DLG用到了幾個圖片文件,在2110目錄下,別忘了導出。(註:我的環境是Windows XP Professional英文版+SP1a,IE是6.0sp1。)
IE默認的模版中,頁眉頁腳均只支持純文字。下面以定製HTML頁眉為例,看看如何定製自己的列印模板。思路是:用自己的頁眉內容換掉原有的內容,並修改其頁眉高度和頁邊距使之和新的頁眉相對應。
第一步,定義頁眉。在要使用此模版預覽列印的HTML文件中加入一個id為Header的div標記,括起HTML頁眉內容,並制定以英寸為單位的頁眉的高度和寬度,其中寬度應該和模版相符。例:
<div style="DISPLAY:none; WIDTH:6.5in; HEIGHT:0.78in">
...(HTML頁眉內容)
</div>
第二步,聲明變數。在模版前面變數聲明部分加上兩個變數聲明:
var g_htmlHeader = "";//用於保存頁眉內容
var g_nHeaerHeight = 0;//頁眉的高度
第三步,取得頁眉。在函數OnLoadBody()中的「Printer.footer = dialogArguments.__IE_FooterString」語句之後加入這段代碼:
oPageHeader = dialogArguments.__IE_BrowseDocument.all.item("Header", 0);
if (null != oPageHeader)
{
g_htmlHeader = oPageHeader.innerHTML;
g_nHeaerHeight = oPageHeader.style.posHeight;
}
第四步,指定頁邊距和頁眉高度。在上面的代碼下面緊接著加入:
//指定頁邊距。其中40可以自己改,單位是百分之一英寸。
Printer.marginTop = 40 + (g_nHeaerHeight * 100);
Printer.marginBottom = 40;
Printer.marginLeft = 40;
Printer.marginRight = 40;
在函數EnsureDocuments()中,
/*注釋掉以下代碼
if (header)
{
tmp = upTop + (27 / 100);
if (tmp > top)
top = tmp;
}
if (footer)
{
tmp = upBottom + (27 / 100);
if (tmp > bottom)
bottom = tmp;
}
*/
//緊接著加上:
tmp = upTop + g_nHeaerHeight;
if (tmp > top)
top = tmp;
//下面隔幾行,注釋掉:oRule.style.top = upTop + "in";
第五步,指定頁眉內容。在函數CPrintDoc_AddPage()中,在「HeadFoot.page = HeadFoot.pageTotal;」語句之後加入:
//這兩行用於設置頁碼,你在頁眉可以通過加入「[P]」和「[p]」分別代表總頁數和當前頁數。
g_htmlHeader = g_htmlHeader.replace("[P]", "<span ></span>");
var pageHeader = g_htmlHeader.replace("[p]", HeadFoot.pageTotal);
//下面隔3行,注釋掉:
//~oPage.children("header").innerHTML = HeadFoot.HtmlHead;
//~oPage.children("footer").innerHTML = HeadFoot.HtmlFoot;
//下面隔幾行,把「newHTM += HeadFoot.HtmlHead;」改為:
newHTM += pageHeader ;
//然後注釋掉(不要頁腳):newHTM += HeadFoot.HtmlFoot;
至此,一個支持自定義HTML頁眉的新模版就定製完成了。是不是覺得特爽?如果覺得它給你省下了兩周的時間,就趕緊到「希望之光」網站上,花你2天的工資,資助一個小孩上學吧。
定製好的列印模板怎麼用呢?請看以下代碼:
var
vaIn, vaOut: OleVariant;
CmdTarget : IOleCommandTarget;
MyHandle : THandle;
begin
vaIn := 'c:\Preview.htm'
//預覽方法1:WebBrowser1.ControlInterface.ExecWB(OLECMDID_PRINTPREVIEW, OLECMDEXECOPT_PROMPTUSER, vaIn, vaOut);
//下面是方法2:
if WebBrowser1.Document <> nil then
begin
WebBrowser1.Document.QueryInterface(IOleCommandTarget, CmdTarget);
if CmdTarget <> nil then
begin
try
CmdTarget.Exec( PGuid(nil), OLECMDID_PRINTPREVIEW, OLECMDEXECOPT_PROMPTUSER, vaIn, vaOut);
finally
CmdTarget._Release;
end;
end
else
begin
ShowMessage('IE不支持該功能,請升級至IE5.5以上。');
end;
end;
end;
方法1簡潔,但是如果WebBroswer不支持列印預覽的話就會出錯。第二種方法可能更好一些。
在列印預覽時,預覽窗口的尺寸大小總是和WebBrowser所在的Form的一樣,而且沒法最大化。更麻煩的是,如果你的表單是嵌入到了別的表單的組件上顯示的,例如,Form1.Parent := Form2.Panel1,即Form1顯示在Form2中Panel1所佔據的位置,那麼預覽窗口就變得很小了,不拉大根本沒法看。解決辦法如下,在預覽的代碼後面加上以下代碼,使預覽窗口最大化:
Handle:=FindWindow('Internet Explorer_TridentDlgFrame', '列印預覽');
if 0 <> MyHandle then
begin
ShowWindow(MyHandle , SW_MAXIMIZE);
end;
如果不預覽而是直接列印,則把OLECMDID_PRINTPREVIEW換成OLECMDID_PRINT就可以了。
如果要在Web應用中使用列印模板,可以通過ActiveX來實現調用。
註:列印模板需要安裝Internet Explorer 5.5以上版本,本文其它功能需要安裝Internet Explorer4.0以上版本。
❹ Word中,web版式視圖文件能列印到A4紙上嗎
Word中,web版式視圖文件能列印到A4紙上,具體的操作步驟:
1、在web版式視圖中,單擊列印圖標;
2、彈出列印對話框,在按紙張大小縮放處選擇A4即可,如圖所示。
❺ 怎樣在web中實現報表列印和列印預覽
一、 瀏覽器的菜單列印功能
這是最簡單的,只需點擊頁面上的列印菜單,但是也是問題最多的,基本上是不能滿足用戶需要。比如:不能精確分頁,有出現打出半行字的風險;改變紙型後列印出的格式和頁面顯示的格式相差太大;頁眉頁腳也需要從菜單中去設置,等等等等。這種方案最大的優勢就是不需要做任何代碼,點擊列印就可以了。
二、 window.Print()
這實際上,是瀏覽器列印功能菜單的一種程序調用。與點擊列印功能菜單一樣,不能精確分頁,不能設置紙型,套打的問題更加無從談起,只不過,可以讓用戶不用去點菜單,直接點擊網頁中的一個按鈕,或一個鏈接裡面調用罷了。
需要指出的是這種方法提供一個列印前和列印後的事件onbeforeprint、onafterprint。可以在列印前的時候重新編輯一些格式,專門送去列印,列印後又處理回來。
function window.onbeforeprint()
{
//將一些不需要列印的隱藏
}
function window.onafterprint()
{
//放開隱藏的元素
}
事實上,很多用戶都是採用這種方式列印,但是這種方式最致命的缺點是不能設置列印參數,比如紙型,頁邊距,選擇列印機等等。
三、 導出excel導出pdf文件的列印
將需要列印的數據導出excel文件或者導出pdf文件,然後打開excel文件或者pdf文件重新列印,用這種方案能實現精確的列印,套打也能實現,但是需要客戶端安裝excel和adobe軟體,操作起來也有些麻煩,並且導出的excel文件可以重新修改編輯,一般用戶都會要求系統提供這種導出的方案,也同時需要直接列印的功能,所以個人覺得這種方案也不能很好的解決列印的問題。
四、 純ActiveX控制項
這種方案其實就是編寫一個C/S的列印控制項,然後嵌入到頁面裡面,將要列印的數據裝入到控制項中,然後列印。這種方案的優點是列印精度高,分頁,設置列印參數等等都能實現。但是缺點也是很明顯的,嵌入ActiveX控制項破壞了web應用的整體html風格,且這樣的控制項通常都比較大,一般都超過1M,下載很慢。
❻ web列印有那幾種方法
一、瀏覽器的列印功能菜單
這種方案的優勢是不需要對瀏覽器作任何擴充,是最簡單的辦法,但問題也最多,如:
不能精確分頁。瀏覽器一般是根據用戶設置的頁面大小,web頁面的內容多少,來自行決定分頁位置,程序員很難控制。會有頁腳頁眉干擾。
不能准確對齊邊邊距及列印文字。
不能解決連續列印。比如,不是僅列印一張票據,而是連續一次列印若干個票據。
二、使用webbrowser控制項+ javascript
這實際上,是瀏覽器列印功能菜單的一種程序調用,與列印功能菜單沒什麼兩樣。分頁的問題仍然存在,只不過,可以讓用戶不用去點菜單,直接在網頁中的一個按鈕,或一個鏈接裡面調用罷了。
三 、使用print css
這是一種最理想的實現web套打的方法。這種方法通過在html文檔中,嵌入列印相關的css樣式,來實現對html文檔輸出列印的控制,比 如設置紙張大小,紙張縱橫方向,列印邊距,分頁等。顯而易見,這種方式成本小,不需要下載任何插件,而且跨平台性非常好。print css推出已經有些時日,但遺憾的是,至今沒有一個廠商的瀏覽器很好地實現了這些標准,這使得程序員目前還不能利用print css進行實際的開發。關於列印css,參見http://css-discuss.incutio.com /?page=PrintStylesheets
四 、使用PDF文件
用這種方式,就是從伺服器端下載一個pdf文件流,在IE中用adobe插件打開,然後用adobe的列印菜單進行列印,雖然這種方案,也能 實現精確套打,但需要下載adobe插件。這是國外報表工具經常推薦的一種列印方法,但在pdf不那麼普及的中國,這種方案不是最好選擇。
❼ word,web視圖能列印在A4紙張上么
可以的。列印的紙張大小是可以調整的,列印效果也是可以預覽的,你可以預先查看,並可以調整好,再列印。
❽ web板式視圖怎麼列印在A4紙上面啊,急啊!哪位可以高手幫幫忙!
可以另存為後在列印,也可以先列印預覽,如果顯示不全的話調一下頁面設置就可以了
❾ Word中,web版式視圖文件能列印到A4紙上嗎遇到跟你一樣的問題了,當時我按照你裡面的回答好像還不行
在Word中,視圖方式與能不能列印到A4紙上是沒有必須關系的。web版式視圖是一種顯示方式,無論你紙張設成什麼紙,都不會改變它的顯示方式,而列印到多大的紙上,是通過頁面設置來設置的。
❿ 如何列印Web版式視圖文檔
如果你不要求格式版面什麼的,非常簡單,在瀏覽器中間一欄有一個列印機的圖標,單擊左鍵即可。