إنشاء مخطط ORG جافا

يتم استخدام مخطط ORG لشرح التسلسل الهرمي لإعداد التقارير أو العلاقة لمؤسسة أو شركة. يمكنك إنشاء مخطط ORG دون الحاجة إلى تثبيت تطبيق أو أداة قائمة على واجهة المستخدم. تتناول هذه المقالة كيفية إنشاء أنواع مختلفة من مخططات ORG برمجيًا في Java.

ORG Chart Maker - تثبيت Java API

Aspose.Diagram for Java يمكن استخدام API لإنشاء أنواع عديدة من الرسوم البيانية المرئية بما في ذلك الرسوم البيانية والمخططات الانسيابية. يمكنك تنزيل ملف JAR من قسم التنزيلات أو باستخدام المواصفات التالية Maven في ملف pom.xml لتطبيقك:

مخزن:

 <repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>http://repository.aspose.com/repo/</url>
    </repository>
</repositories>

الاعتماد:

 <dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-diagram</artifactId>
        <version>22.8</version>
        <classifier>jdk16</classifier>
    </dependency>
</dependencies>

قم بإنشاء مخطط ORG في نمط CompactTree في Java

يمكنك إنشاء مخطط ORG في نمط CompactTree بالخطوات التالية:

  1. تحميل الأساسيات من أي رسم تخطيطي أو استنسل أو قالب موجود.
  2. تحديد القيم لبناء التسلسل الهرمي.
  3. أضف الأشكال والوصلات بين العقد.
  4. احفظ مخطط الإخراج.

يوضح نموذج التعليمات البرمجية التالي كيفية إنشاء مخطط ORG في Java:

// تحميل الأساسيات من أي رسم تخطيطي أو استنسل أو قالب موجود
String visioStencil = "Basic Shapes.vss";
String rectangleMaster = "Rectangle";
String connectorMaster = "Dynamic connector";
int pageNumber = 0;
double width = 1;
double height = 1;
double pinX = 4.25;
double pinY = 9.5;
// تحديد القيم لبناء التسلسل الهرمي
List<String> listPos = Arrays.asList(new String[] { "0", "0:0", "0:1", "0:2", "0:3", "0:4", "0:5", "0:6", "0:0:0", "0:0:1", "0:3:0", "0:3:1", "0:3:2", "0:6:0", "0:6:1" });
// حدد Hashtable لتعيين اسم السلسلة لمعرف الشكل الطويل
Hashtable shapeIdMap = new Hashtable();
// قم بإنشاء رسم تخطيطي جديد
Diagram diagram = new Diagram(visioStencil);
diagram.getPages().get(pageNumber).getPageSheet().getPageProps().getPageWidth().setValue(11);
for (String orgnode : listPos)
{
    // أضف شكل مستطيل جديد
    long rectangleId = diagram.addShape(pinX++, pinY++, width, height, rectangleMaster, pageNumber);
    // عيّن خصائص الشكل الجديد
    Shape shape = diagram.getPages().get(pageNumber).getShapes().getShape(rectangleId);
    shape.getText().getValue().add(new Txt(orgnode));
    shape.setName(orgnode);
    shapeIdMap.put(orgnode, rectangleId);
}
// إنشاء اتصالات بين العقد
for (String orgName : listPos)
{
    int lastColon = orgName.lastIndexOf(':');
    if(lastColon > 0)
    {
        String parendName = orgName.substring(0, lastColon);
        long shapeId = (long)shapeIdMap.get(orgName);
        long parentId = (long)shapeIdMap.get(parendName);
        Shape connector1 = new Shape();
        long connecter1Id = diagram.addShape(connector1, connectorMaster, pageNumber);
        diagram.getPages().get(pageNumber).connectShapesViaConnector(parentId, ConnectionPointPlace.RIGHT,
            shapeId, ConnectionPointPlace.LEFT, connecter1Id);
    }
}

//تخطيط تلقائي CompactTree الرسم البياني
LayoutOptions compactTreeOptions = new LayoutOptions();
compactTreeOptions.setLayoutStyle(LayoutStyle.COMPACT_TREE);
compactTreeOptions.setDirection(LayoutDirection.DOWN_THEN_RIGHT);
compactTreeOptions.setEnlargePage(false);

diagram.getPages().get(pageNumber).layout(compactTreeOptions);

// حفظ الرسم التخطيطي
diagram.save("DrawCompactTreeChart_java.vsdx", SaveFileFormat.VSDX);

قم بإنشاء مخطط ORG في نمط مخطط انسيابي في Java

قد تحتاج إلى إنشاء أنواع مختلفة من مخططات ORG التي قد تتبع قوالب مختلفة. هنا سوف تتعلم كيفية إنشاء مخطط ORG في نمط مخطط انسيابي برمجيًا في Java:

  1. تحميل الأساسيات من أي رسم تخطيطي أو استنسل أو قالب موجود.
  2. أضف عقدًا وموصلات تنظيمية.
  3. تعيين التخطيط وحفظ الرسم التخطيطي الإخراج.

يوضح مقتطف الشفرة أدناه كيفية إنشاء مخطط ORG في نمط مخطط انسيابي باستخدام Java:

// تحميل الأساسيات من أي رسم تخطيطي أو استنسل أو قالب موجود
String visioStencil = "Basic Shapes.vss";
String rectangleMaster = "Rectangle";
String connectorMaster = "Dynamic connector";
int pageNumber = 0;
double width = 1;
double height = 1;
double pinX = 4.25;
double pinY = 9.5;
// تحديد القيم لبناء التسلسل الهرمي
List<String> listPos = Arrays.asList(new String[] { "0", "0:0", "0:1", "0:2", "0:3", "0:4", "0:5", "0:6", "0:0:0", "0:0:1", "0:3:0", "0:3:1", "0:3:2", "0:6:0", "0:6:1" });
// حدد Hashtable لتعيين اسم السلسلة لمعرف الشكل الطويل
Hashtable shapeIdMap = new Hashtable();
// قم بإنشاء رسم تخطيطي جديد
Diagram diagram = new Diagram(visioStencil);
diagram.getPages().get(pageNumber).getPageSheet().getPageProps().getPageWidth().setValue(11);
for (String orgnode : listPos)
{
    // أضف شكل مستطيل جديد
    long rectangleId = diagram.addShape(pinX++, pinY++, width, height, rectangleMaster, pageNumber);
    // عيّن خصائص الشكل الجديد
    Shape shape = diagram.getPages().get(pageNumber).getShapes().getShape(rectangleId);
    shape.getText().getValue().add(new Txt(orgnode));
    shape.setName(orgnode);
    shapeIdMap.put(orgnode, rectangleId);
}
// إنشاء اتصالات بين العقد
for (String orgName : listPos)
{
    int lastColon = orgName.lastIndexOf(':');
    if(lastColon > 0)
    {
        String parendName = orgName.substring(0, lastColon);
        long shapeId = (long)shapeIdMap.get(orgName);
        long parentId = (long)shapeIdMap.get(parendName);
        Shape connector1 = new Shape();
        long connecter1Id = diagram.addShape(connector1, connectorMaster, pageNumber);
        diagram.getPages().get(pageNumber).connectShapesViaConnector(parentId, ConnectionPointPlace.RIGHT,
            shapeId, ConnectionPointPlace.LEFT, connecter1Id);
    }
}

//مخطط انسيابي للتخطيط التلقائي
LayoutOptions flowChartOptions = new LayoutOptions();
flowChartOptions.setLayoutStyle(LayoutStyle.FLOW_CHART);
flowChartOptions.setDirection(LayoutDirection.TOP_TO_BOTTOM);
flowChartOptions.setEnlargePage(true);

diagram.getPages().get(pageNumber).layout(flowChartOptions);

// حفظ الرسم التخطيطي
diagram.save("DrawFlowChart_java.vsdx", SaveFileFormat.VSDX);

احصل على رخصة مؤقتة مجانية

يمكنك اختبار API دون أي قيود تقييمية عن طريق طلب ترخيص مؤقت مجاني.

استنتاج

في هذه المقالة ، تعلمت كيفية إنشاء مخططات ORG برمجيًا في Java. يشرح إنشاء مخطط نمط CompactTree أو مخطط انسيابي وفقًا لاحتياجاتك. علاوة على ذلك ، يمكنك إلقاء نظرة على العديد من الميزات الأخرى من خلال الانتقال إلى مساحة التوثيق. لا تتردد في مراسلتنا على المنتدى في حال كنت ترغب في مناقشة أي من متطلباتك أو مخاوفك.

أنظر أيضا

تحويل VSD أو VSDX إلى VTX بجافا