iT邦幫忙

0

C# RDLC 列印

目前列印資料都已正確顯示出來
但第一頁的列印資料距離上緣
比起其他頁大,如下圖,第二頁之後的位置列印都一樣
導致調完之後第一頁正常,第二頁位置偏上,
將列印位置向下調整後,第一頁會直接變成空白(如第二張圖),
跑到第二頁去,但列印位置就是理想中的地方
不過列印會多一頁空白,請問該如何調整
https://ithelp.ithome.com.tw/upload/images/20210720/20073943uTQ2fIMJaY.png

https://ithelp.ithome.com.tw/upload/images/20210720/20073943tAq71ZUiKO.jpg

1 個回答

1
japhenchen
iT邦大師 1 級 ‧ 2021-07-21 09:11:03
最佳解答

空白頁的成因,有可能是你的RDLC報表檔的主體屬性的SIZE太大,超過了實際紙張尺寸,建議是扣除印表機的極限邊界來設定,比如雷射會有5mm的上下左右邊界,你的寬度就不要超過(29.7 - 5 × 2) = 287mm ,盡可能避免超寬而折印空白頁的毛病
https://ithelp.ithome.com.tw/upload/images/20210721/20117954v46iABx5iO.jpg

另,在RDLC主體屬性(報表框外的空白處就是主體)裡把ComsumeContainerWhitespace改成true也能避免純空白頁的發生,但不能避免因超過可印範圍而有一點丁內容的不完全空白頁

看更多先前的回應...收起先前的回應...

第會往下跑是因為上一頁的內容忽多忽少

要避免這個問題,請把QRCODE放在Teblix(表格方塊)裡的image來放,不要獨自放image在報表上

要讓報表整齊好看,我的建議是......全部都放在tablix表格裡,不管來源是不是資料庫https://ithelp.ithome.com.tw/upload/images/20210721/20117954zIeVTp05BH.jpg

isaepfkeyr iT邦研究生 5 級 ‧ 2021-07-21 09:45:39 檢舉

japhenchen
關於空白頁,是因為網將元件位置往下調之後產生的
但是只會第一頁是空白頁
不管我的內容是一頁或是300頁,
僅會產生第一頁空白,
往下調是因為第一頁不曉得為何
所有資料偏下一點
第二頁之後的所有資料就都正常
我這個資料底有先放一個清單元件
然後將dataset要顯示的拖曳到清單內
且image也是插入在清單內
主要是不清楚為何第一頁資料列印時偏下
且我的資料都固定一行,並不會讓他產生第二行

我的處理方式也是盡量用tablix 來裝載所有東西,並將空間放到盡可能大到不會因為出現多行斷行而造成下一頁,另,報表框不必設定到A4或A3樠版,有可能你要印的東西只有10公分見方,你的報表屬性裡的size就只要設定到可見內容的範圍內就好,也就是10公分見方..(比方)

isaepfkeyr iT邦研究生 5 級 ‧ 2021-07-21 10:08:36 檢舉

了解
因為我的標籤只有高3.5CM
所以我在設計時也是以這個高度下去設計
只是無法解決為何只有第一頁會造成列印位置偏下
後面2~299頁列印都在我需要的位置
就好像第一頁列印時上方有個邊界
然後第二頁之後就都沒有了
但我有將報表裡的邊界都設定為0
有看到padding也都改為0
就是無法處理第一頁列印偏下

我的回覆裡的第一張圖片,就是我做6.5×2.5cm的條碼標籤的做法,不是A4 5×2的那種標纖,而是Zebra這類條碼標籤機輸出的,RDLC報表檔的內容裡不要用Label/picture這類範圍不受限的元件,全用表格放,你的狀況可能是有頁首的資料存在吧,也檢查一下這個屬性看一下

https://ithelp.ithome.com.tw/upload/images/20210721/20117954pOQlQVgQvK.jpg

isaepfkeyr iT邦研究生 5 級 ‧ 2021-07-21 10:40:17 檢舉

japhenchen
會用到picture,主要是因為需要產生QRCode
頁首我看過並未使用到
上面那個屬性的Margin也都是0了,
有試過把picture拿掉
只剩下tablix及textbox第一頁還是偏下
https://ithelp.ithome.com.tw/upload/images/20210721/20073943iPwIxnlbwM.png

還是回過頭來講......如果你用"文字方塊",就真的難以控制前頁的內容所引發的起始位置被下推的問題

我只相信,第一頁的內容是正常的,第二頁之後開始往上縮....而不是第一頁被下推
所以,用資料表或矩陣來規畫吧~不管你有沒有用到資料庫,因為矩陣及資料表Location是絕對位置,不會因上面的內容而亂跑
https://ithelp.ithome.com.tw/upload/images/20210721/20117954XMRLUywu1u.jpg
是RDLC的BUG吧?ANYWAY,等微軟來修,不如想辦法來救

isaepfkeyr iT邦研究生 5 級 ‧ 2021-07-21 11:38:52 檢舉

好的
我再把它改成矩陣看看
會用清單是網路教學提到一頁一筆需將資料放在清單內
上面提到的textbox是直接從dataset拖曳出來的

為了這個不受控的RDLC,我也是被整的很慘,才學到一切都是矩陣為基礎,才擺脫這個bird question

isaepfkeyr iT邦研究生 5 級 ‧ 2021-07-27 16:47:23 檢舉

補充一下
今天發現是因為使用了清單,第一頁在產生時明顯下偏一點
沒使用清單的其他設計,並無這種情況

我要發表回答

立即登入回答