Ms word InlineShapes exportovat jako obrázek problém přidávat další hranice

0

Otázka

pomocí níže uvedeného kódu pro MS Word ukládání Obrázků a převést do base64 . tady Zákoníku práce Dobrá, Ale když Přijde na obrázek exportovat přidat Nějaké Hranice Příkladu je Ukázáno níže Původní Obrázek

obrázek po exportu imag2

 If singleline.Range.InlineShapes.Count > 0 Then
    Dim shp1 As InlineShape
Dim mchart1 As Shape
Set shp1 = singleline.Range.InlineShapes(1)
shp1.Select
Selection.Copy
Set mchart1 = ActiveDocument.Shapes.AddChart(xl3DAreaStacked, , , shp1.Width, shp1.Height)
mchart1.Chart.ChartData.Workbook.Application.Quit
mchart1.Chart.Paste
mchart1.Chart.Export ("c:\here\" + CStr(i) + ".png")
mchart1.Chart.Delete
b64strng = ConvertFileToBase64("c:\here\" + CStr(i) + ".png")
Kill "c:\here\" + CStr(i) + ".png"
End If

je nějaká oprava nebo Alternativní pro export obrázků díky

ms-word vba
2021-11-19 09:59:02
1

Nejlepší odpověď

0

Nevidím žádný rozdíl mezi screenshoty, pravděpodobně kvůli tmě prohlížeč na pozadí. Je hranice viditelné po Exportu příkazu, nebo po ConvertFileToBase64 funkce?

Zdá se, že se snažíš export non-graf grafické pomocí grafu šunt. Budete mít lepší výsledky, tím, že uvedení PowerPoint dělat grafiku exportovat. Zde je ukázkové makro ukazuje, jak exportovat Slovo grafiky z aplikace PowerPoint. Můžete upravit tento exportovat jednotlivý Tvar, nebo ShapeRange (grafický) místo dokončit snímek.

Public Sub ExportMap()
Dim pptPres As PowerPoint.Presentation
Dim pptSlide As PowerPoint.Slide
Dim pptShapeRange As PowerPoint.ShapeRange
Dim Path$, File$
Dim oRange As Range


  Application.ScreenUpdating = False
  If ActiveDocument.ProtectionType = wdAllowOnlyFormFields Then
    ActiveDocument.Unprotect
  End If
  myDate$ = Format(Date, "m-d-yyyy")
  Set pptApp = CreateObject("PowerPoint.Application")
  Path$ = ActiveDocument.Path & Application.PathSeparator
  File$ = "WorldMap " & myDate$ & ".png"
  Set pptPres = pptApp.Presentations.Add(msoFalse)
  
  Set oRange = ActiveDocument.Bookmarks("WholeMap").Range
  oRange.CopyAsPicture
  
  Set pptSlide = pptPres.Slides.Add(1, ppLayoutBlank)
  On Error Resume Next
  With pptPres.PageSetup
    .SlideSize = 7
    .SlideWidth = 1150
    .SlideHeight = 590
  End With
  Set pptShapeRange = pptSlide.Shapes.PasteSpecial(ppPasteEnhancedMetafile, Link:=msoFalse)
  With pptShapeRange
    .Top = .Top + 6
'    .Left = .Left + 510
  End With
  
  pptSlide.Export Path$ & File$, "PNG"
  
  pptApp.Quit
  
  Set pptPres = Nothing
  Set pptApp = Nothing
  Set pptSlide = Nothing
  If ActiveDocument.ProtectionType = wdNoProtection Then
    ActiveDocument.Protect Type:=wdAllowOnlyFormFields, noreset:=True
  End If
  Application.ScreenUpdating = True
  MsgBox "All done! Check the folder containing this template for a file called '" & File$ & "'."
End Sub
2021-11-19 17:57:18

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................