我使用ASP.NET(Framework 3.5)和Crystal Reports生成My College的學生的身份證,但我想在透明表格中打印卡並將其粘貼到一張相同尺寸的塑料卡片,以便我需要打印所有要打印的鏡像。 我試着用鏡像的形式設計水晶報告,但是找不到寫鏡像文本的方法。任何人都可以建議一種方法來完成這項工作,我想要的只是翻轉PDF文件或Crystal Report中的內容。鏡像(翻轉)打印PDF文件
0
A
回答
0
一對夫婦思想:
1)渲染PDF到圖像(使用的Ghostscript/ImageMagick的或商業的PDF庫((例如TIF)和鏡像圖像打印
2)鏡像的PDF本身,也許有可能與iTextSharp的
3)使用報告工具,並嘗試使用某種反向字體(coud快選項)
0
任何API,讓您導入頁面,並直接寫入PDF內容流會讓你做這個。
在iText的(JAVA),它會是這個樣子:
PdfReader reader = new PdfReader(pdfPath);
Document doc = new Document();
PdfWriter writer = PdfWriter.getInstance(doc, new FileOutputStream(outPath));
for (int pageNum = 1; pageNum <= reader.getNumberOfPages(); ++pageNum) {
PdfImportedPage page = writer.getImportedPage(reader, pageNum);
PdfContentByte pageContent = writer.getDirectContent();
// flip around vertical axis
pageContent.addTemplate(page, 1f, 0f, 0f, -1f, page.getWidth(), 0f);
doc.newPage();
}
上面的代碼進行以下屁股-U-ME-ptions:
- 默認
Document()
頁大小與當前PdfImportedPage
的大小相匹配。 - 源頁面不旋轉。
- 沒有註釋,可選內容組(層)以及其他不是只是在頁面內容中表示的位。
一些解決方法:
// keep the page size consistent
PdfImportedPage page = writer.getImportedPage(reader, pageNum);
doc.newPage(page.getBoundingBox());
PdfContentByte pageContent = writer.getDirectContent();
pageContent.addTemplate(...);
// to compensate for a page's rotation, you need to either rotate the target page
// Easy in PdfStamper, virtually impossible with `Document`/`PdfWriter`.
AffineTransform unRotate = AffineTranform.getRotateInstance(degToRad(360 - pageRotation), pageCenterX, pageCenterY)
AffineTransform flip = new AffineTransform(1f, 0f, 0f, -1f, page.getWidth(), 0f);
AffineTransform finalTrans = flip;
finalTrans.concatenate(unRotate);
pageContent.addTemplate(page, finalTrans);
公平的警告:我的二維矩陣福是不是所有的強。我幾乎肯定會做錯事。調試這些東西是一個真正的PITA。東西要麼「看起來是正確的」,要麼是完全搞砸了它的頁面(ergo隱形,所以你不知道它走的是哪條路)。我經常通過[-1000 -1000 1000 1000]更改頁面矩形,以便我可以看到它的全部內容。好玩的東西。
至於複製註釋等......哎。 PdfCopy通過它的addPage()
方法爲你做了所有這些工作,但是這不會讓你首先轉換頁面內容。您對PdfImportedPage所做的任何更改都將被忽略。你真的被困在艱難的路上......手動複製所有的煩人的比特,並改變它們以補償你翻轉的頁面......或者將源碼搞亂到addPage()
以獲得你想要的結果。兩者都需要對PDF有深入的瞭解。
考慮到具體情況,您可能不需要擔心它,但值得一提的是,如果有不同情況的人出現相同的目標。
相關問題
- 1. UIImage翻轉和鏡像
- 2. 打印PDF文件
- 3. 郵件,pdf圖像圖像在joomla給予鏡像印象
- 4. Ascii打印文件爲PDF
- 5. CUPS打印PDF文件
- 6. 從Qt打印PDF文件
- 7. 打印PDF文件與PDFSharp
- 8. PDF頁翻轉/翻轉軟件
- 9. 填充parttern(位)被翻轉和鏡像
- 10. 轉換爲PDF打印
- 11. 使用pdf打印機打印文檔
- 12. 是否可以在R中繪製鏡像翻轉的文本?
- 13. 正確翻轉/鏡像像素的圖像?
- 14. 打印PDF雙面打印
- 15. 用於打印PDF文件的SDK
- 16. 使用PHP打印PDF文件
- 17. 打印大量的文件到pdf
- 18. 如何使用Prolog打印PDF文件
- 19. 從Mono打印PS/PDF文件
- 20. Java在Mac中打印PDF文件
- 21. 在iPhone或iPad上打印PDF文件
- 22. MonoTouch打印本地PDF文件
- 23. 用Java打印Microsoft Office和PDF文件
- 24. 打印動態生成的PDF文件
- 25. AirPrint:直接將PDF文件打印到打印機
- 26. 如何打印PDF文件在Java中與打印對話框
- 27. 如何從無線打印機打印PDF文件?
- 28. 打印爲pdf格式打印機造成損壞的文件
- 29. 無聲打印「可打印」對象到PDF文件
- 30. 我想將PDF文件打印成網絡打印