我有多個矩形,它們都共享相同的專色。有沒有辦法將它們合併/組合成一個矢量對象,這樣生成的pdf的尺寸就更小了?在iTextSharp中分組矩形
2
A
回答
2
如果您是從頭創建文檔,那麼答案是微不足道的:是的!
繪製共享相同專色的矩形的所有路徑就足夠了,然後使用填充,填充或填充&筆劃路徑的運算符。
如果您正在討論優化現有PDF文檔,那麼您需要進行一些繁重的編程工作。您需要解析每個查找矩形運算符的內容流(假設矩形不是使用移動到和運算符來繪製),檢查這些形狀填充和/或描邊的位置,然後重新排列所有這些運算符。這需要很多思考。我會知道從哪裏開始,但我無法預測它會在哪裏結束。也許事實證明,將單個矩形定義爲Form XObject並重用該單個外部對象(可能不是)更有意義。很難預測。
此外:您正在討論流中的操作符。無論如何,這些流都會被壓縮,因此您可能會做很多工作來減小尺寸。
我會說:你所要求的可能是可能的,但不清楚你爲什麼要這樣做,因爲它會導致文件大小的有限減少。
如果大小是一個問題,可能有其他地方,你是「浪費字節」,可能會導致更令人滿意的結果。我很好奇聽到你爲什麼認爲使用專色的矩形是罪魁禍首。你是重用專色實例,不是嗎?如果您爲繪製的每個矩形創建一個新的專色實例,那麼您已經找到了真正的罪魁禍首,並且您可以避免對矩形進行分組。
相關問題
- 1. 如何編輯iTextSharp的PDF大矩形?
- 2. 切分矩形
- 3. 矩陣組件參考iTextSharp的與ASP.NET5
- 4. 在WPF c中將圖像和矩形分組在一起c#
- 5. 爲列表框分組矩形
- 6. UITableViewCell與分組風格的矩形角
- 7. iTextSharp - 無法在表格背景色上繪製矩形
- 8. ITextsharp在使用線條或矩形時使簽名無效
- 9. 如何在矩形中創建矩形?
- 10. OpenCV groupRectangles - 獲取分組和未分組的矩形
- 11. 如何從矩形數組中刪除隨機矩形?
- 12. nullpointerexception當從矩形數組中檢索矩形
- 13. 查找矩形包含矩形數組中的點
- 14. SpriteBatch.Draw在矩形中
- 15. 在C++中將矩陣分解成方形子矩陣
- 16. 在Matlab中剔除矩形矩陣的部分
- 17. 從矩形矩陣組成邊緣
- 18. 如何計算一組精確覆蓋矩形板矩形板的矩形板
- 19. ItextSharp對齊PDF格式的矩形內的圖像
- 20. 在二進制網格上分組爲矩形
- 21. 如何劃分矩形
- 22. 均勻分佈矩形
- 23. 懸停分割矩形div
- 24. 聚類一組矩形
- 25. OpenCV如何組矩形
- 26. C#矩形數組排序
- 27. 高效組重疊矩形
- 28. 當旋轉外部矩形時,在矩形內移動矩形
- 29. UITableView是否支持用矩形(不是圓形)部分分組樣式?
- 30. 圖形:從交錯數組畫矩形