如何编程将Word文件转换为bmp图像(1000分)?(0分)

  • 主题发起人 主题发起人 cmldy
  • 开始时间 开始时间
C

cmldy

Unregistered / Unconfirmed
GUEST, unregistred user!
请问如何将Word文件转换为bmp格式文件(编程实现),成功之后立刻付1000分,决不食言。
 
编一个打印驱动程序,调用word打印出来。
 
不用虚拟驱动
 
word格式是保密加保护的
关注!
 
还有一个复杂的办法:1.装上acobat 5.0,利用它带的pdf writer的打印驱动,打成pdf格式。
2.用photoshop这个软件可以import pdf格式,然后存成bmp。
其中第2条用程序实现有难度,到网上找找pdf转tif之类的控件试试。
 
为什么?不能打印吗?
 
1000分?不会吧?就是是俺也不要了。
这个可以,但是有缺陷,也是从论坛上摘出来的。
可能对你有用
RICHEDIT-->BMP的方法
uses RichEdit;

procedure TForm1.Button1Click(Sender: TObject);
var
Range: TFormatRange;
LastChar, MaxLen, LogX, LogY: Integer;
begin
FillChar(Range, SizeOf(TFormatRange), 0);
with Image1, Range do
begin
LogX := GetDeviceCaps(Canvas.Handle, LOGPIXELSX);
LogY := GetDeviceCaps(Canvas.Handle, LOGPIXELSY);
hdc := Canvas.Handle;
hdcTarget := hdc;
rc.right := Image1.ClientWidth * 1440 div LogX;
rc.bottom := Image1.ClientHeight * 1440 div LogY;
rcPage := rc;
LastChar := 0;
MaxLen := GetTextLen;
chrg.cpMax := -1;
repeat
chrg.cpMin := LastChar;
LastChar := SendMessage(RichEdit1.Handle, EM_FORMATRANGE, 1,
Longint(@Range));
until (LastChar >= MaxLen) or (LastChar = -1);
end;
SendMessage(RichEdit1.Handle, EM_FORMATRANGE, 0, 0);
Image1.Refresh;
end;
 
用虚拟打印已经解决了,但我就打印到打印机就不行了,很不方便。
我是指用编程实现将Word文件转换为bmp文件,不用其他工具。
 
你是说word不让你“打印”?
那可以另存为htm格式吗?
 
完全用程序来实现。
 
我原来见过用excel把图表存成GIF图的程序,可以在web上显示图表,是不是这个意思?
 
有点像,但必须用程序来实现,将一个Word文件转换为bmp图象文件。
感谢xusong168的关注。
 
你说的必须用程序,用delphi调用word application对象行不?
要是不能用word对象,我就不会了。
 
谢谢yzhshi
我在论坛中看过这段代码了,和我的有一点距离,Richedit只能处理RTF文件。
 
使用Word Application可以吗?我还没有试成功,Who can help me?
 
我提供一个思路。
前提是Word文档不能太大。
如果Word文档不大,可以读到屏幕上,然后采用区域copy的方法,把窗口内的文档
变成图片。如果Word文档很大就没有办法了。我想也只有这个办法了吧。
至于把Word文档读出来不是很困难。

提供思路,谨供参考。


 
ActiveDocument.Shapes.AddOLEObject Anchor:=Selection.Range, ClassType:= _
"Word.Document.8", FileName:="", LinkToFile:=False, DisplayAsIcon:=False
Selection.TypeText Text:="fdghfghfghdfgh"
ActiveDocument.Close
If Selection.Type <> wdSelectionShape Then
Selection.InlineShapes(1).ConvertToShape.Select
End If
Selection.ShapeRange(1).OLEFormat.ConvertTo ClassType:="Word.Picture.8", _
DisplayAsIcon:=False
Selection.Copy
 
我还是觉得虚拟打印是最好的办法了。
上面那段VBA程序可以把Word.Document.8对象
转换为Word.Picture.8对象,然后复制到剪贴板中,你可以再用delphi读一下
剪贴板中的内容,然后存成bmp格式。
 
你想干么?
估计不行,真行1000也不够
 

Similar threads

后退
顶部