【FastCube.Net教程】在Adobe Acrobat中顯示具有透明度的影象的功能
具有透明度的影象通常被稱為具有alpha通道的影象,Alpha通道包含有關影象的部分或完全透明度的資訊,主要用於計算機動畫。RGB影象最多可包含24個alpha通道,它們中的每一個都包含有關影象的一部分透明度資訊。管理這些通道可以使影象的一些部分在合適的時間透明顯示。支援透明度的最常見影象柵格格式:
PSD—Adobe Photoshop的原生格式。支援完全和部分透明度;
TIFF—最常用於儲存掃描影象,因為它允許儲存有關深度顏色的資訊。這種質量使得tiff的格式在列印時很受歡迎,支援部分和完全透明;
GIF - 這種格式在Web圖形中最受歡迎,因為檔案的大小非常小。允許僅儲存有關完全透明的資訊,不能製作半透明的影象;
PNG在Web圖形中也很常見,但檔案較大並且支援半透明。
在本文中將介紹在將FastReport.Net報表匯出為PDF時如何關閉對半透明的支援。應用程式程式碼:
Report report = new Report(); report.Load("@/../../Transparency.frx"); PDFExport export = new PDFExport(); export.TransparentImages = false; report.Prepare(); report.Export(export, "result.pdf");
從程式碼中可以看出,PDF匯出具有TransparentImages屬性,允許禁用(false)或啟用(true)透明度支援。匯出為PDF時,三個報表物件表示為圖片:Picture(圖片),RichText和,Chart(圖表),TransparentImages屬性適用於所有這些屬性。
匯出影象
png格式的原始影象沒有背景:
現在將Picture物件新增到圖片的人物中並將此圖片載入到其中,為人物設定彩色背景。
紅×××調在影象的背景上很明顯,這意味著圖片具有透明背景。如何將此報表匯出為PDF格式,與TransparentImages = ture屬性的值類似:
像設計器一樣,設定TransparentImages = false:
圖片的透明背景現在設定成白色
RichText匯出
RichText在透明背景下的樣式:
雖然物件具有透明背景,但是無法刪除白色襯底的文字。設定屬性TransparentImages = false:
背景設定成白色,鑑於無法刪除白色基底文字,對於RichText,TransparentImages屬性不是很適用。
匯出圖表物件
Chart物件有許多背景設定,要獲得物件的透明背景,需要在物件屬性中設定以下設定:
BackColor = Transparent; BorderSkin(SkinStyle) = None; BorderLineColor = Transparent;
開啟Legends集合,選擇圖例併為標題設定TitleBackColor = Transparent。開啟ChartAreas集合,選擇一個條目,並將Transparent的值設定為BackColor。圖表:
使用屬性TransparentImages = true的值匯出為PDF時,圖表看起來與上圖中的相同。如果設定TransparentImages = false,會得到一個白色背景: