C# 如何从大字符串值创建多页Tiff文件
我有以下代码,它接受一个字符串并创建一个Tiff文件C# 如何从大字符串值创建多页Tiff文件,c#,text,image-manipulation,tiff,C#,Text,Image Manipulation,Tiff,我有以下代码,它接受一个字符串并创建一个Tiff文件 string sFileData = "Hello World"; string sFileName = "Bitmap.bmp"; Font oFont = new Font("Arial", 11, FontStyle.Bold, System.Drawing.GraphicsUnit.Pixel); var sz = GraphicsHelper.MeasureString(sFileData, oFont); var oBitma
string sFileData = "Hello World";
string sFileName = "Bitmap.bmp";
Font oFont = new Font("Arial", 11, FontStyle.Bold, System.Drawing.GraphicsUnit.Pixel);
var sz = GraphicsHelper.MeasureString(sFileData, oFont);
var oBitmap = new Bitmap((int)sz.Width, (int)sz.Height);
using (Graphics oGraphics = Graphics.FromImage(oBitmap)) {
oGraphics.Clear(Color.White);
oGraphics.DrawString(sFileData, oFont, new SolidBrush(System.Drawing.Color.Black), 0, 0);
oGraphics.Flush();
}
oBitmap.Save(sFileName, System.Drawing.Imaging.ImageFormat.Tiff);
public static class GraphicsHelper {
public static SizeF MeasureString(string s, Font font) {
SizeF result;
using (var image = new Bitmap(1, 1)) {
using (var g = Graphics.FromImage(image)) {
result = g.MeasureString(s, font);
}
}
return result;
}
}
当字符串的宽度和高度不超过A4纸的大小时,这种方法可以很好地工作。然而,我现在的问题是,我需要能够打印这个Tiff到打印机
因此,我需要一种方法将任何文本包装到A4页的宽度,如果高度超过A4页的高度,则需要将文本转到下一页
有谁能举例说明我是如何做到这一点的吗?您已经在测量字符串并知道A4的大小,因此我假设您的问题是您不知道如何创建包含多个页面的TIFF 如果是这样的话,请看以下类似问题的答案: 结果是使用
Bitmap.SaveAdd()
将图像添加到现有TIFF