한컴에서 차트 만들기

def 차트(self):
    총 = self.대상.CreateAction("InsertChart")
    총알 = 총.CreateSet()
    총.GetDefault(총알)
    총알.SetItem("ChartGroup", 1)
    총알.SetItem("ChartIndex", 0)
    총알.SetItem("ChartDataDialogDisable", 1)
    총.Execute(총알)

차트에 대한 API 문서가 혹시 따로 있을까요?

원하는 코드는 아래 4가지 입니다.

  1. 차트의 굵기 및 색상변환하는 방법
  2. 계열 설명의 위치를 하단으로 이동
  3. x축 y축 설명의 폰트 변경
  4. 레이블 입력 및 폰트 변경

matplotlib를 사용하자니… 용량이 25메가가 늘어나서…
한컴 자체기능을 사용할려고 하나…
관련 api가 없어서 갈피를 못잡고 있습니다

api문서나 아니면 item명들을 추출할 수 있는 방법이 따로 있을까요?

matplotlib으로 만들 수 있기는 한데… 용량이 25메가 짜리여서…

그랬다간 범정부오피스 실행파일이 20메가에서 45메가로 2배넘게 용량이 증가합니다.

그래서 한컴 자체 기능을 사용해보려고 하는데…
api문서가 없다보니…

어떻게 접근해야할지 감이 안잡힙니다 ㅠㅠ

제발 한번만 도와주십쇼 ㅠㅠ

1개의 좋아요

안녕하세요.
차트…는 생성 이후에 수정이 가능한 API가 제공되고 있지 않습니다. :smiling_face_with_tear:

도움을 드리지 못해 죄송합니다.

1개의 좋아요

혹시 생성하면서 수정이가능한 API는 존재할까요?

1개의 좋아요

안녕하세요.

사실상… 오토메이션으로 차트를 핸들링하기는 현재는 거의 불가능합니다.

내부에서 검토해보도록 하겠습니다.

1개의 좋아요

아래 코드는 사실 내부적으로 사용하는 코드인데 알려 드리도록 하겠습니다.

        DHwpAction dialogAction = (HWPCONTROLLib.DHwpAction)axHwpCtrl1.CreateAction("ShapeObjDialog");
        DHwpParameterSet dialogSet = (HWPCONTROLLib.DHwpParameterSet)dialogAction.CreateSet();
        dialogAction.GetDefault(dialogSet);
     

        DHwpParameterArray lockProp = (HWPCONTROLLib.DHwpParameterArray)dialogSet.CreateItemArray("OptLockProperties", 2);
        lockProp.SetItem(0, 16397); // 여기는
        lockProp.SetItem(1, 16395); // 수정하지말아주세요

        dialogSet.SetItem("Width", 30000); // 크기는 point단위입니다.
        dialogSet.SetItem("Height",10000);
        dialogAction.Execute(dialogSet);

혹시 이런방식의 코드 덩어리라도 얻을 수 있는 방법이 있을까요?

실마리만 잡으면 여러번 삽질해서라도 어떻게든 구현을 해보고 싶습니다.

아니면 특정 parameterset의 itemid 목록을 알 수 있는 방법이 있을까요?

예를들어서 InsertChart 의 파라미터셋의
itemid로는
chartgroup
chartindex
chartdatadialogdisable ← 이거는 2020버전에서는 적용안됨

아무튼 이렇게 itemid만이라도 알 수 있는 방법이 있으면 어떻게든 삽질을 해보겠습니다.

1개의 좋아요

현재 노출되어있는 차트관련 ParameterSet이
InsertChart 시

ChartGroup
ChartIndex
ChartDataDialogDisable

이렇게 3개밖에 노출되어있지 않습니다.
수정에 관련된 ParameterSet도 노출되어 있지 않구요… 그래서 외부에서 수정이 불가능합니다 :cry:

1개의 좋아요