Arbeta med bilder
Extrahera alla bilder från en Visio-sida
I Microsoft Visio är sidorna antingen förgrunds- eller bakgrundssidor. Du kan extrahera bilder från en viss sida ien Visio fil.
Extrahera bilder
Sidklassobjektet representerar ritytan på en förgrundssida eller en bakgrundssida. Shapes-egenskapen som exponeras av klassen Diagram stöder en samling Aspose.Diagram.Shape-objekt. Den här egenskapen kan användas för att extrahera alla bilder från en viss sida.
Extrahera bilder Programmeringsexempel
Följande kodbit extraherar alla bilder från en viss Visio-sida.
import jpype | |
import asposediagram | |
jpype.startJVM() | |
from asposediagram.api import * | |
lic = License() | |
lic.setLicense("Aspose.Total.Product.Family.lic") | |
# call a Diagram class constructor to load a VSD diagram | |
diagram = Diagram("ExtractAllImagesFromPage.vsd") | |
# Enter page index i.e. 0 for first one | |
for shape in diagram.getPages().getPage(0).getShapes(): | |
# Filter shapes by type Foreign | |
if shape.getType() == TypeValue.FOREIGN: | |
fos = java.io.FileOutputStream("ExtractAllImages" + str(shape.getID()) + "_Out.bmp") | |
fos.write(shape.getForeignData().getValue()) | |
fos.close() | |
jpype.shutdownJVM() |
Få ikoner av olika Visio former
Aspose.Diagram för Python via Java API tillåter nu utvecklare att få ikoner för olikaVisio former.
Få formikonen
Koden i exemplen nedan visar hur man:
- Ladda en befintlig diagram eller stencil.
- Få mästare efter dess index
- Få master ikon.
- Spara ikonen till det lokala utrymmet.
Få ikoner programmering exempel
import jpype | |
import asposediagram | |
jpype.startJVM() | |
from asposediagram.api import * | |
lic = License() | |
lic.setLicense("Aspose.Total.Product.Family.lic") | |
# Load stencil file to a diagram object | |
stencil = Diagram("Timeline.vss") | |
# get master | |
master = stencil.getMasters().getMasterByName("Triangle milestone") | |
# get byte array | |
icon_bytes = master.getIcon() | |
# create an image file | |
fos = java.io.FileOutputStream("MasterIcon_Out.png") | |
# write byte array of the image | |
fos.write(icon_bytes) | |
# close array | |
fos.close() | |
jpype.shutdownJVM() |
Byt ut en bildform på Visio Diagram
Aspose.Diagram för Python via Java API låter utvecklare komma åt och ersätta tillgängliga bildformer iVisio diagram.
Byta ut en bildform
Koden i exemplen nedan visar hur man:
- Ladda ett befintligt diagram.
- Iterera genom de selektiva sidformerna.
- Använd filter för att få bildformer.
- Spara resulterande Visio diagram till det lokala utrymmet.
Byt ut ett bildformsprogrammeringsprov
import jpype | |
import asposediagram | |
jpype.startJVM() | |
from asposediagram.api import * | |
lic = License() | |
lic.setLicense("Aspose.Total.Product.Family.lic") | |
# call a Diagram class constructor to load the VSD diagram | |
diagram = Diagram("ExtractAllImagesFromPage.vsd") | |
# convert image into bytes array | |
fi = java.io.File("image.png") | |
fileContent = java.nio.file.Files.readAllBytes(fi.toPath()) | |
# Enter page index i.e. 0 for first one | |
for shape in diagram.getPages().getPage(0).getShapes(): | |
# Filter shapes by type Foreign | |
if shape.getType() == TypeValue.FOREIGN: | |
# replace picture shape | |
shape.getForeignData().setValue(fileContent) | |
# save diagram | |
diagram.save("ReplaceShapePicture_Out.vsdx", SaveFileFormat.VSDX) | |
jpype.shutdownJVM() |
Importera bild som en Visio Shape
Aspose.Diagram för Python via Java API tillåter nu utvecklare att importera en bild som en Microsoft Visio form.
Infoga en bild i Visio
Koden i exemplen nedan visar hur man:
- Skapa ett diagram.
- Skaffa Visio sida
- Importera en bild som en Visio-form
- Spara diagram.
Infoga ett bildprogrammeringsexempel
import jpype | |
import asposediagram | |
jpype.startJVM() | |
from asposediagram.api import * | |
lic = License() | |
lic.setLicense("Aspose.Total.Product.Family.lic") | |
# Create a new diagram | |
diagram = Diagram() | |
# Get page object by index | |
page0 = diagram.getPages().getPage(0) | |
# Set pinX, pinY, width and height | |
pinX = 2 | |
pinY = 2 | |
width = 4 | |
height = 3 | |
# Import Bitmap image as Visio shape | |
page0.addShape(pinX, pinY, width, height, java.io.FileInputStream("image.png")) | |
# Save Visio diagram | |
diagram.save("InsertImageInVisio_out.vsdx", SaveFileFormat.VSDX) | |
jpype.shutdownJVM() |