4 | '这是 is h1......................................................................'
5 |
6 |
7 | '这是 is h2......................................................................'
8 |
9 |
10 | '这是 is h3......................................................................'
11 |
12 |
13 | '这是 is h4......................................................................'
14 |
15 |
16 | '这是 is h5......................................................................'
17 |
18 |
19 | '这是 is h6......................................................................'
20 |
21 |
22 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/test/java/com/github/paohaijiao/sample/JQuickPdfTest.java:
--------------------------------------------------------------------------------
1 | package com.github.paohaijiao.sample;
2 |
3 | import com.github.paohaijiao.adaptor.JAdaptor;
4 | import com.github.paohaijiao.executor.JQuickPdfXExecutor;
5 | import com.github.paohaijiao.resouce.JReader;
6 | import com.github.paohaijiao.resouce.impl.JReSourceFileReader;
7 | import org.junit.Test;
8 |
9 | import java.io.IOException;
10 |
11 | public class JQuickPdfTest {
12 |
13 | @Test
14 | public void file() throws IOException {
15 |
16 | JReader fileReader = new JReSourceFileReader("rule.txt");
17 | JAdaptor context = new JAdaptor(fileReader);
18 | JQuickPdfXExecutor executor = new JQuickPdfXExecutor();
19 | executor.execute(context.getRuleContent());
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/test/java/com/github/paohaijiao/model/TreemapNode.java:
--------------------------------------------------------------------------------
1 | package com.github.paohaijiao.model;
2 |
3 | import lombok.Data;
4 |
5 | import java.awt.*;
6 | import java.awt.geom.Rectangle2D;
7 | import java.util.ArrayList;
8 | import java.util.List;
9 |
10 | @Data
11 | public class TreemapNode {
12 | String name;
13 | double value;
14 | List children;
15 | Color color;
16 | Rectangle2D.Double rect; // 添加rect属性
17 |
18 | public TreemapNode(String name, double value) {
19 | this.name = name;
20 | this.value = value;
21 | this.children = new ArrayList<>();
22 | }
23 |
24 | public void addChild(TreemapNode child) {
25 | children.add(child);
26 | }
27 |
28 | public boolean hasChildren() {
29 | return !children.isEmpty();
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/enums/JFontType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.enums;
17 |
18 | public enum JFontType {
19 | SYSTEM, FILE, RESOURCE, CUSTOM
20 | }
21 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/JChart.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao;
18 |
19 | /**
20 | * 图类接口
21 | *
22 | * @author martin
23 | */
24 | public interface JChart {
25 | }
26 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JLegendType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 图例类型
20 | */
21 | public enum JLegendType {
22 | plain, scroll
23 | }
24 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JX.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JX {
23 | center, left, right
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JY.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JY {
23 | center, top, bottom
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/JComponent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao;
18 |
19 | /**
20 | * 组件接口
21 | *
22 | * @author martin
23 | */
24 | public interface JComponent {
25 | }
26 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JTrigger.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JTrigger {
23 | item, axis
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JRoseType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author : martin
21 | */
22 | public enum JRoseType {
23 | radius, area
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JBrushType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JBrushType {
23 | both, stroke, fill
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JOrient.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JOrient {
23 | horizontal, vertical
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JSort.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JSort {
23 | none, ascending, descending
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JTimeLineType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JTimeLineType {
23 | time, number
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JFontStyle.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JFontStyle {
23 | normal, italic, oblique
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JSelectedMode.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JSelectedMode {
23 | single, multiple
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JAxisType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JAxisType {
23 | category, value, time, log
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JDirection.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * 方向反转
21 | *
22 | * @author martin
23 | */
24 | public enum JDirection {
25 | inverse
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JLinkType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * 线条类型,可选为:'curve'(曲线) | 'line'(直线)
21 | */
22 | public enum JLinkType {
23 | curve, line
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JNameLocation.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JNameLocation {
23 | start, middle, end
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JControlPosition.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JControlPosition {
23 | left, right, none
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JEffectType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 特效类型
20 | *
21 | * @author martin
22 | */
23 | public enum JEffectType {
24 | ripple //涟漪特效
25 | }
26 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JFontWeight.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JFontWeight {
23 | normal, bold, bolder, lighter
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JPointerType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JPointerType {
23 | line, cross, shadow, none
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/style/itemstyle/JNormal.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.style.itemstyle;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public class JNormal extends JStyle {
23 | }
24 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JCalculation.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * 计算方式
21 | *
22 | * @author martin
23 | */
24 | public enum JCalculation {
25 | sum, average
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JLineType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JLineType {
23 | solid, dotted, dashed, broken, curve
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/style/JCrossStyle.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.style;
18 |
19 | /**
20 | * 坐标轴指示器
21 | *
22 | * @author martin
23 | */
24 | public class JCrossStyle extends JLineStyle {
25 | }
26 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/style/itemstyle/JEmphasis.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.style.itemstyle;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public class JEmphasis extends JStyle {
23 | }
24 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JAlign.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 图例标记和文本的对齐
20 | *
21 | * @author martin
22 | */
23 | public enum JAlign {
24 | auto, left, right, top, bottom
25 | }
26 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JBaseline.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * 垂直对齐方式
21 | *
22 | * @author martin
23 | */
24 | public enum JBaseline {
25 | top, bottom, middle
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JMagic.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JMagic {
23 | line, bar, stack, tiled, force, chord, pie, funnel
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/JLabel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao;
18 |
19 | /**
20 | * Description: Label
21 | *
22 | * @author martin
23 | */
24 | public class JLabel extends JAbstractLabel {
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JMarkType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * Description: 标记默认方法
21 | *
22 | * @author martin
23 | */
24 | public enum JMarkType {
25 | min, max, average
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JDataZoomType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * @author martin
20 | */
21 | public enum JDataZoomType {
22 | inside,//所谓『内置』,即内置在坐标系中
23 | slider,//滑动条型数据区域缩放组件
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JPolarType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * 极坐标的形状,'polygon'|'circle' 多边形|圆形
21 | *
22 | * @author martin
23 | */
24 | public enum JPolarType {
25 | polygon, circle
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JTool.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * 常用工具
21 | *
22 | * @author martin
23 | */
24 | public enum JTool {
25 | dataView, dataZoom, magicType, mark, restore, saveAsImage
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JRoam.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * 是否开启滚轮缩放和拖拽漫游,默认为false(关闭),其他有效输入为true(开启),'scale'(仅开启滚轮缩放),'move'(仅开启拖拽漫游)
21 | */
22 | public enum JRoam {
23 | scale, move, zoom, pan
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JCoordinateSystem.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 坐标系
20 | *
21 | * @author martin
22 | * @since 2016-02-28 10:20
23 | */
24 | public enum JCoordinateSystem {
25 | cartesian2d, polar, geo
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JLoadingEffect.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * loading效果
21 | *
22 | * @author martin
23 | */
24 | public enum JLoadingEffect {
25 | spin, bar, ring, whirling, dynamicLine, bubble
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JTriggerOn.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 提示框触发的条件
20 | *
21 | * @author martin
22 | * @since 3.0
23 | */
24 | public enum JTriggerOn {
25 | mousemove,//鼠标移动时触发
26 | click,//鼠标点击时触发
27 | }
28 |
--------------------------------------------------------------------------------
/jquick-pdf-svg/src/main/java/com/github/paohaijiao/provider/JSvgProvider.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.provider;
17 |
18 |
19 | import com.github.paohaijiao.enums.JChartType;
20 |
21 | public interface JSvgProvider {
22 |
23 | public void drawSvg(JChartType type, T data);
24 | }
25 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JNodeClick.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 点击节点
20 | *
21 | * @author martin
22 | */
23 | public enum JNodeClick {
24 | zoomToNode, //点击节点后缩放到节点。
25 | link, //如果节点数据中有 link 点击节点后会进行超链接跳转。
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JPosition.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * Description: Position
21 | *
22 | * @author martin
23 | */
24 | public enum JPosition {
25 | outside, outer, inside, left, right, top, bottom, center
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JLayout.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 图的布局 - graph
20 | *
21 | * @author martin
22 | */
23 | public enum JLayout {
24 | none,//不采用任何布局,使用节点中提供的 x, y 作为节点的位置
25 | circular,//采用环形布局
26 | force,//采用力引导布局
27 | }
28 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/sample/ReportBeanBuilder.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.sample;
17 |
18 | /**
19 | * packageName com.github.paohaijiao.sample
20 | *
21 | * @author Martin
22 | * @version 1.0.0
23 | * @since 2025/7/13
24 | */
25 | public class ReportBeanBuilder {
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/JData.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public interface JData {
23 | /**
24 | * 添加元素
25 | *
26 | * @param values
27 | * @return
28 | */
29 | T data(Object... values);
30 | }
31 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/axis/JAxisLabel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.axis;
18 |
19 | import com.github.paohaijiao.JAbstractLabel;
20 |
21 | /**
22 | * 坐标轴专用,和Label没有区别
23 | *
24 | * @author martin
25 | */
26 | public class JAxisLabel extends JAbstractLabel {
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JGraphicType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 图形元素类型
20 | *
21 | * @author martin
22 | */
23 | public enum JGraphicType {
24 |
25 | image, text, circle, sector, ring, polygon, polyline, rect, line, bezierCurve, arc, group
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/jquick-pdf-font/src/main/java/com/github/paohaijiao/font/JFontProvider.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.font;
17 |
18 | import com.itextpdf.kernel.font.PdfFont;
19 |
20 | public interface JFontProvider {
21 | /**
22 | * get Font
23 | *
24 | * @return
25 | */
26 | PdfFont getFont();
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JFilterMode.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 数据过滤模式
20 | *
21 | * @author martin
22 | */
23 | public enum JFilterMode {
24 | filter,//数据窗口外的数据,被 过滤掉。这个配置项是最常用的
25 | empty,//数据窗口外的数据,被 设置为空。 与『过滤掉』的区别是,『设置为空』的数据当空数据展示,也就是说还会占有位置
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/series/JK.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.series;
18 |
19 | /**
20 | * Description: K
21 | *
22 | * @author martin
23 | */
24 | public class JK extends JCandlestick {
25 | public JK() {
26 | }
27 |
28 | public JK(String name) {
29 | super(name);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/jquick-pdf-svg/src/main/java/com/github/paohaijiao/model/JIndicator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model;
17 |
18 |
19 | import lombok.AllArgsConstructor;
20 | import lombok.Data;
21 |
22 | /**
23 | *
24 | */
25 | @Data
26 | @AllArgsConstructor
27 | public class JIndicator {
28 | private String name;
29 | private double maxValue;
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/feature/JRestore.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.feature;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public class JRestore extends JFeature {
23 | /**
24 | * 构造函数
25 | */
26 | public JRestore() {
27 | this.show(true);
28 | this.title("还原");
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/series/JEMap.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.series;
17 |
18 | /**
19 | * 和Map完全相同,只是为了避免和java.util.Map重名
20 | *
21 | * @author martin
22 | */
23 | public class JEMap extends JMap {
24 | public JEMap() {
25 | }
26 |
27 | public JEMap(String name) {
28 | super(name);
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/advance/JPdfXHtmlProvider.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.advance;
17 |
18 | /**
19 | * packageName com.github.paohaijiao.advance
20 | *
21 | * @author Martin
22 | * @version 1.0.0
23 | * @className JPdfXHtmlProvider
24 | * @date 2025/6/22
25 | * @description
26 | */
27 | public class JPdfXHtmlProvider {
28 | }
29 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/render/impl/JFontRenderer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.render.impl;
17 |
18 | /**
19 | * packageName com.github.paohaijiao.render.impl
20 | *
21 | * @author Martin
22 | * @version 1.0.0
23 | * @className JFontRenderer
24 | * @date 2025/6/29
25 | * @description
26 | */
27 | public class JFontRenderer {
28 | }
29 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JVisualMapType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 视觉元素
20 | *
21 | * @author martin
22 | */
23 | public enum JVisualMapType {
24 | symbol,//图形类别
25 | symbolSize,//图形大小
26 | color,//颜色
27 | colorAlpha,//颜色透明度、
28 | colorLightness,//颜色明暗度
29 | colorSaturation,//颜色饱和度、
30 | colorHue//色调
31 | }
32 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/JBorderModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model;
17 |
18 | import com.github.paohaijiao.enums.JBorder;
19 | import com.itextpdf.kernel.colors.Color;
20 | import lombok.Data;
21 |
22 | @Data
23 | public class JBorderModel {
24 |
25 |
26 | private JBorder border;
27 |
28 | private Float width;
29 |
30 | private Color color;
31 | }
32 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/render/JStyleRenderer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.render;
17 |
18 | import com.github.paohaijiao.model.JStyleAttributes;
19 | import com.itextpdf.layout.Document;
20 | import com.itextpdf.layout.element.IElement;
21 |
22 | public interface JStyleRenderer {
23 |
24 | void applyStyles(Document doc, IElement element, JStyleAttributes styles);
25 | }
26 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/JMarginModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model;
17 |
18 | import com.itextpdf.layout.properties.UnitValue;
19 | import lombok.Data;
20 |
21 | @Data
22 | public class JMarginModel {
23 |
24 | private UnitValue first;
25 |
26 | private UnitValue second;
27 |
28 | private UnitValue third;
29 |
30 | private UnitValue fourth;
31 | }
32 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/visitor/JPdfXLinkVisitor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.visitor;
17 |
18 | /**
19 | * packageName com.paohaijiao.javelin.visitor
20 | *
21 | * @author Martin
22 | * @version 1.0.0
23 | * @className JPdfXDivVisitor
24 | * @date 2025/6/15
25 | * @description
26 | */
27 | public class JPdfXLinkVisitor extends JPdfXLineSeparaterVisitor {
28 |
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/visitor/JPdfXListBoxVisitor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.visitor;
17 |
18 | /**
19 | * packageName com.paohaijiao.javelin.visitor
20 | *
21 | * @author Martin
22 | * @version 1.0.0
23 | * @className JPdfXDivVisitor
24 | * @date 2025/6/15
25 | * @description
26 | */
27 | public class JPdfXListBoxVisitor extends JPdfXLinkVisitor {
28 |
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/visitor/JPdfXInputFieldVisitor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.visitor;
17 |
18 |
19 | /**
20 | * packageName com.paohaijiao.javelin.visitor
21 | *
22 | * @author Martin
23 | * @version 1.0.0
24 | * @className JPdfXDivVisitor
25 | * @date 2025/6/15
26 | * @description
27 | */
28 | public class JPdfXInputFieldVisitor extends JPdfXHtmlPageBreakVisitor {
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/sample/CatalogType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.sample;
17 |
18 | public enum CatalogType {
19 |
20 | /**
21 | * 目录类别 1-需要注意 2-正常项目
22 | */
23 | ATTENTION(1), NORMAL(2);
24 | private Integer val;
25 |
26 | CatalogType(Integer val) {
27 | this.val = val;
28 | }
29 |
30 | public Integer val() {
31 | return val;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/visitor/JPdfXPageCountElementVisitor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.visitor;
17 |
18 |
19 | /**
20 | * packageName com.paohaijiao.javelin.visitor
21 | *
22 | * @author Martin
23 | * @version 1.0.0
24 | * @className JPdfXDivVisitor
25 | * @date 2025/6/15
26 | * @description
27 | */
28 | public class JPdfXPageCountElementVisitor extends JPdfXListBoxVisitor {
29 |
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/jquick-pdf-css/src/main/java/com/github/paohaijiao/model/JStyleAttributes.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model;
17 |
18 |
19 | import java.util.HashMap;
20 |
21 | /**
22 | * packageName com.github.paohaijiao.model
23 | *
24 | * @author Martin
25 | * @version 1.0.0
26 | * @className HtmlAttributes
27 | * @date 2025/6/22
28 | * @description
29 | */
30 | public class JStyleAttributes extends HashMap {
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/config/JCatalogConfig.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.config;
17 |
18 | import lombok.Data;
19 |
20 | /**
21 | * packageName com.github.paohaijiao.config
22 | *
23 | * @author Martin
24 | * @version 1.0.0
25 | * @since 2025/7/20
26 | */
27 | @Data
28 | public class JCatalogConfig {
29 |
30 | private boolean enabled = true;
31 |
32 | private Integer startPage = 1;
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/axis/JCategoryAxis.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.axis;
18 |
19 | import com.github.paohaijiao.code.JAxisType;
20 |
21 | /**
22 | * 类目轴
23 | *
24 | * @author martin
25 | */
26 | public class JCategoryAxis extends JAxis {
27 |
28 | /**
29 | * 构造函数
30 | */
31 | public JCategoryAxis() {
32 | this.type(JAxisType.category);
33 | }
34 |
35 | }
36 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JSymbol.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.code;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public enum JSymbol {
23 | none, auto,
24 | circle, rect, roundRect, rectangle, triangle, diamond,
25 | emptyCircle, emptyRectangle, emptyTriangle, emptyDiamond,
26 | heart, droplet, pin, arrow, star,
27 | emptyheart, emptydroplet, emptypin, emptyarrow, emptystar,
28 | }
29 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/feature/JSaveAsImage.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.feature;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public class JSaveAsImage extends JFeature {
23 | /**
24 | * 构造函数
25 | */
26 | public JSaveAsImage() {
27 | this.show(true);
28 | this.title("保存为图片");
29 | this.type("png");
30 | this.lang(new String[]{"点击保存"});
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/feature/JDataView.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.feature;
18 |
19 | /**
20 | * @author martin
21 | */
22 | public class JDataView extends JFeature {
23 | /**
24 | * 构造函数
25 | */
26 | public JDataView() {
27 | this.show(true);
28 | this.title("数据视图");
29 | this.readOnly(false);
30 | this.lang(new String[]{"数据视图", "关闭", "刷新"});
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/style/JStyleAlignModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model.style;
17 |
18 | import lombok.Data;
19 |
20 | /**
21 | * packageName com.paohaijiao.javelin.model.style
22 | *
23 | * @author Martin
24 | * @version 1.0.0
25 | * @className JStyleDataModel
26 | * @date 2025/6/14
27 | * @description
28 | */
29 | @Data
30 | public class JStyleAlignModel {
31 |
32 | private String direction;
33 | }
34 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/axis/JTimeAxis.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 |
17 | package com.github.paohaijiao.axis;
18 |
19 | import com.github.paohaijiao.code.JAxisType;
20 |
21 | /**
22 | * 时间型坐标轴用法同数值型,只是目标处理和格式化显示时会自动转变为时间,并且随着时间跨度的不同自动切换需要显示的时间粒度
23 | *
24 | * @author martin
25 | */
26 | public class JTimeAxis extends JValueAxis {
27 | /**
28 | * 构造函数
29 | */
30 | public JTimeAxis() {
31 | this.type(JAxisType.time);
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/sample/ReportConstant.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.sample;
17 |
18 | /**
19 | * @author: laoliangliang
20 | * @description:
21 | * @create: 2020/5/22 10:55
22 | **/
23 | public class ReportConstant {
24 |
25 | public final static String[] SEGMENETS = {"0", "0.5", "0.8", "1.2", "1.8", "3.0"};
26 | public final static String FORBIDDE = "forbidPage";
27 | public final static String CATALOG_SIZE = "catalogSize";
28 | }
29 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/sample/ReportExtraParam.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.sample;
17 |
18 | import lombok.Data;
19 |
20 | /**
21 | * packageName com.github.paohaijiao.sample
22 | *
23 | * @author Martin
24 | * @version 1.0.0
25 | * @since 2025/7/13
26 | */
27 | @Data
28 | public class ReportExtraParam {
29 | private CatalogType type;
30 |
31 | public ReportExtraParam(CatalogType type) {
32 | this.type = type;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/jquick-pdf-css/src/main/java/com/github/paohaijiao/model/css/JCSSPropertiesCoreModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model.css;
17 |
18 | import com.github.paohaijiao.css.z.model.JCSSPropertiesZModel;
19 |
20 | /**
21 | * packageName com.github.paohaijiao.model.css
22 | *
23 | * @author Martin
24 | * @version 1.0.0
25 | * @className CSSPropertiesBModel
26 | * @date 2025/6/29
27 | * @description
28 | */
29 | public class JCSSPropertiesCoreModel extends JCSSPropertiesZModel {
30 | }
31 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/custom/JPdfXDocumentBuilder.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.custom;
17 |
18 | import com.itextpdf.layout.Document;
19 |
20 | /**
21 | * packageName com.github.paohaijiao.custom
22 | *
23 | * @author Martin
24 | * @version 1.0.0
25 | * @className JPdfXDocumentBuilder
26 | * @date 2025/6/22
27 | * @description
28 | */
29 | public abstract class JPdfXDocumentBuilder {
30 |
31 |
32 | public abstract Document buildDocument();
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/jquick-pdf-css/src/main/java/com/github/paohaijiao/model/provider/JCSSPropertiesProvider.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model.provider;
17 |
18 | import com.github.paohaijiao.model.css.JCSSPropertiesCoreModel;
19 | import com.itextpdf.layout.element.BlockElement;
20 |
21 | import java.net.MalformedURLException;
22 |
23 | public interface JCSSPropertiesProvider {
24 |
25 | public void applyCssProperties(BlockElement> element, JCSSPropertiesCoreModel cssProperties) throws MalformedURLException;
26 | }
27 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/JNumberUnitModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model;
17 |
18 | import com.github.paohaijiao.enums.JUnit;
19 | import lombok.Data;
20 |
21 | /**
22 | * packageName com.paohaijiao.javelin.model
23 | *
24 | * @author Martin
25 | * @version 1.0.0
26 | * @className JNumberUnitModel
27 | * @date 2025/6/14
28 | * @description
29 | */
30 | @Data
31 | public class JNumberUnitModel {
32 | private Integer number;
33 | private JUnit unit;
34 |
35 | }
36 |
--------------------------------------------------------------------------------
/jquick-pdf-svg/src/main/java/com/github/paohaijiao/data/JGraphContainer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.data;
17 |
18 | import com.github.paohaijiao.JOption;
19 | import com.github.paohaijiao.enums.JChartType;
20 | import lombok.Data;
21 |
22 | /**
23 | * packageName com.github.paohaijiao.data
24 | *
25 | * @author Martin
26 | * @version 1.0.0
27 | * @since 2025/7/20
28 | */
29 | @Data
30 |
31 | public class JGraphContainer {
32 |
33 | private JChartType type;
34 |
35 | private JOption option;
36 | }
37 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/JHtmlRenderModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model;
17 |
18 | import com.itextpdf.layout.element.IElement;
19 | import lombok.Data;
20 |
21 | import java.util.ArrayList;
22 | import java.util.List;
23 |
24 | /**
25 | * packageName com.github.paohaijiao.model
26 | *
27 | * @author Martin
28 | * @version 1.0.0
29 | * @since 2025/7/19
30 | */
31 | @Data
32 | public class JHtmlRenderModel {
33 |
34 | List list = new ArrayList();
35 | }
36 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/anno/JPdfToolAnnotation.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.anno;
17 |
18 | import java.lang.annotation.ElementType;
19 | import java.lang.annotation.Retention;
20 | import java.lang.annotation.RetentionPolicy;
21 | import java.lang.annotation.Target;
22 |
23 | @Target(ElementType.TYPE)
24 | @Retention(RetentionPolicy.RUNTIME)
25 | public @interface JPdfToolAnnotation {
26 |
27 | String name() default "";
28 |
29 | String description() default "";
30 |
31 | String version() default "1.0";
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/list/JListItemModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model.list;
17 |
18 | import com.github.paohaijiao.model.JStyleAttributes;
19 | import lombok.Data;
20 |
21 | /**
22 | * packageName com.paohaijiao.javelin.model.paragraph
23 | *
24 | * @author Martin
25 | * @version 1.0.0
26 | * @className JParagraphModel
27 | * @date 2025/6/14
28 | * @description
29 | */
30 | @Data
31 | public class JListItemModel {
32 |
33 | private Object elementValue;
34 |
35 | private JStyleAttributes style;
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/paragraph/JParagraphModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model.paragraph;
17 |
18 | import com.github.paohaijiao.model.style.JStyleModel;
19 | import lombok.Data;
20 |
21 | /**
22 | * packageName com.paohaijiao.javelin.model.paragraph
23 | *
24 | * @author Martin
25 | * @version 1.0.0
26 | * @className JParagraphModel
27 | * @date 2025/6/14
28 | * @description
29 | */
30 | @Data
31 | public class JParagraphModel {
32 |
33 | private String text;
34 |
35 | private JStyleModel style;
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/jquick-pdf-data/src/main/java/com/github/paohaijiao/code/JColorMappingBy.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.code;
17 |
18 | /**
19 | * 表示同一层级节点,在颜色列表中(参见 color 属性)选择时,按照什么来选择
20 | *
21 | * @author martin
22 | */
23 | public enum JColorMappingBy {
24 | value,//将节点的值(即 series-treemap.data.value)映射到颜色列表中。这样得到的颜色,反应了节点值的大小。 可以使用 visualDimension 属性来设置,用 data 中那个纬度的值来映射
25 | index,//将节点的 index(序号)映射到颜色列表中。即同一层级中,第一个节点取颜色列表中第一个颜色,第二个节点取第二个。这样得到的颜色,便于区分相邻节点。
26 | id //将节点的 id(即 series-treemap.data.id)映射到颜色列表中。id 是用户指定的,这样能够使得,在treemap 通过 setOption 变化数值时,同一 id 映射到同一颜色,保持一致性。
27 | }
28 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/heading/JHeadingModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model.heading;
17 |
18 | import com.github.paohaijiao.model.JStyleAttributes;
19 | import lombok.Data;
20 |
21 | /**
22 | * packageName com.paohaijiao.javelin.model.paragraph
23 | *
24 | * @author Martin
25 | * @version 1.0.0
26 | * @className JParagraphModel
27 | * @date 2025/6/14
28 | * @description
29 | */
30 | @Data
31 | public class JHeadingModel {
32 |
33 | private String text;
34 |
35 | private Integer level;
36 |
37 | private JStyleAttributes style;
38 |
39 | }
40 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/style/JStyleSpacingModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model.style;
17 |
18 | import com.github.paohaijiao.model.JNumberUnitModel;
19 | import lombok.Data;
20 |
21 | /**
22 | * packageName com.paohaijiao.javelin.model.style
23 | *
24 | * @author Martin
25 | * @version 1.0.0
26 | * @className JStyleDataModel
27 | * @date 2025/6/14
28 | * @description
29 | */
30 | @Data
31 | public class JStyleSpacingModel {
32 |
33 | private String type;
34 | private JNumberUnitModel leftSpacing;
35 | private JNumberUnitModel rightSpacing;
36 | }
37 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/sample/CataLog.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.sample;
17 |
18 | import lombok.AllArgsConstructor;
19 | import lombok.Data;
20 |
21 | /**
22 | * packageName com.github.paohaijiao.sample
23 | *
24 | * @author Martin
25 | * @version 1.0.0
26 | * @since 2025/7/12
27 | */
28 | @Data
29 | @AllArgsConstructor
30 | public class CataLog {
31 | private Integer index;
32 | private String categoryName;
33 | private String name;
34 | private String label;
35 | private Integer pageNumber;
36 | private ReportExtraParam extraParam;
37 | }
38 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/anno/JPdfOperation.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.anno;
17 |
18 | import java.lang.annotation.ElementType;
19 | import java.lang.annotation.Retention;
20 | import java.lang.annotation.RetentionPolicy;
21 | import java.lang.annotation.Target;
22 |
23 | @Target(ElementType.METHOD)
24 | @Retention(RetentionPolicy.RUNTIME)
25 | public @interface JPdfOperation {
26 |
27 | String name() default "";
28 |
29 | String description() default "";
30 |
31 | boolean requiresSource() default false;
32 |
33 | boolean producesResult() default true;
34 | }
35 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/table/JRowModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model.table;
17 |
18 | import com.github.paohaijiao.model.JStyleAttributes;
19 | import lombok.Data;
20 |
21 | import java.util.List;
22 |
23 | /**
24 | * packageName com.paohaijiao.javelin.model.paragraph
25 | *
26 | * @author Martin
27 | * @version 1.0.0
28 | * @className JParagraphModel
29 | * @date 2025/6/14
30 | * @description
31 | */
32 | @Data
33 | public class JRowModel {
34 |
35 |
36 | private JStyleAttributes style;
37 |
38 | private List columnList;
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/jquick-pdfx/src/main/java/com/github/paohaijiao/model/table/JColumnModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Licensed under the Apache License, Version 2.0 (the "License");
3 | * you may not use this file except in compliance with the License.
4 | * You may obtain a copy of the License at
5 | *
6 | * http://www.apache.org/licenses/LICENSE-2.0
7 | *
8 | * Unless required by applicable law or agreed to in writing, software
9 | * distributed under the License is distributed on an "AS IS" BASIS,
10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | * See the License for the specific language governing permissions and
12 | * limitations under the License.
13 | *
14 | * Copyright (c) [2025-2099] Martin (goudingcheng@gmail.com)
15 | */
16 | package com.github.paohaijiao.model.table;
17 |
18 | import com.github.paohaijiao.model.JStyleAttributes;
19 | import lombok.Data;
20 |
21 | import java.util.List;
22 |
23 | /**
24 | * packageName com.paohaijiao.javelin.model.paragraph
25 | *
26 | * @author Martin
27 | * @version 1.0.0
28 | * @className JParagraphModel
29 | * @date 2025/6/14
30 | * @description
31 | */
32 | @Data
33 | public class JColumnModel {
34 |
35 | private JStyleAttributes style;
36 |
37 | private String type;
38 |
39 | private List