|
431 | 431 | "id": "shapes", |
432 | 432 | "label": "Shapes & Containers", |
433 | 433 | "examples": [ |
| 434 | + { |
| 435 | + "id": "photo-clip", |
| 436 | + "title": "Photo Clip (silhouette)", |
| 437 | + "description": "A raster photo clipped to a free-form silhouette — circle, SVG heart, star — via ShapeContainer.path(...) + ClipPolicy.CLIP_PATH; the image COVER-fills each box so the native-curve outline crops it crisply at any zoom.", |
| 438 | + "tags": ["shapes", "shapes", "clip", "v1.8"], |
| 439 | + "pdf": "showcase/pdf/features/shapes/photo-clip.pdf", |
| 440 | + "screenshot": "showcase/screenshots/features/shapes/photo-clip.png", |
| 441 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples/features/shapes/PhotoClipExample.java" |
| 442 | + }, |
434 | 443 | { |
435 | 444 | "id": "shape-container", |
436 | 445 | "title": "Shape-as-Container", |
|
439 | 448 | "pdf": "showcase/pdf/features/shapes/shape-container.pdf", |
440 | 449 | "screenshot": "showcase/screenshots/features/shapes/shape-container.png", |
441 | 450 | "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples/features/shapes/ShapeContainerExample.java" |
| 451 | + }, |
| 452 | + { |
| 453 | + "id": "vector-path", |
| 454 | + "title": "Vector Paths (Bézier)", |
| 455 | + "description": "addPath(...) — free-form design shapes with native cubic Bézier curves: stroked waves, filled blobs, mixed line/curve ribbons. No tessellation.", |
| 456 | + "tags": ["shapes", "shapes", "bezier", "v1.8"], |
| 457 | + "pdf": "showcase/pdf/features/shapes/vector-path.pdf", |
| 458 | + "screenshot": "showcase/screenshots/features/shapes/vector-path.png", |
| 459 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples/features/shapes/ShapeContainerExample.java" |
442 | 460 | } |
443 | 461 | ] |
444 | 462 | }, |
|
564 | 582 | "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples/features/snapshots/LayoutSnapshotRegressionExample.java" |
565 | 583 | } |
566 | 584 | ] |
| 585 | + }, |
| 586 | + { |
| 587 | + "id": "charts", |
| 588 | + "label": "Charts", |
| 589 | + "examples": [ |
| 590 | + { |
| 591 | + "id": "chart-showcase", |
| 592 | + "title": "Chart Showcase", |
| 593 | + "description": "Generated showcase for features / charts.", |
| 594 | + "tags": ["features", "charts"], |
| 595 | + "pdf": "showcase/pdf/features/charts/chart-showcase.pdf", |
| 596 | + "screenshot": "showcase/screenshots/features/charts/chart-showcase.png", |
| 597 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples" |
| 598 | + } |
| 599 | + ] |
| 600 | + }, |
| 601 | + { |
| 602 | + "id": "debug", |
| 603 | + "label": "Debug & Diagnostics", |
| 604 | + "examples": [ |
| 605 | + { |
| 606 | + "id": "debug-overlay", |
| 607 | + "title": "Debug Overlay", |
| 608 | + "description": "DocumentDebugOptions — guide lines plus semantic node-path labels on the rendered sheet; trace any misplaced block back to the builder call that authored it.", |
| 609 | + "tags": ["debug", "debug", "labels", "v1.8"], |
| 610 | + "pdf": "showcase/pdf/features/debug/debug-overlay.pdf", |
| 611 | + "screenshot": "showcase/screenshots/features/debug/debug-overlay.png", |
| 612 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples/features/debug/Debug Overlay" |
| 613 | + } |
| 614 | + ] |
| 615 | + }, |
| 616 | + { |
| 617 | + "id": "docx", |
| 618 | + "label": "Docx", |
| 619 | + "examples": [ |
| 620 | + { |
| 621 | + "id": "word-export-companion", |
| 622 | + "title": "Word Export (DOCX)", |
| 623 | + "description": "DocxSemanticBackend — the same document as a fixed-layout PDF and an editable Word file; charts fall back to their data table.", |
| 624 | + "tags": ["docx", "docx", "word", "export"], |
| 625 | + "pdf": "showcase/pdf/features/docx/word-export-companion.pdf", |
| 626 | + "screenshot": "showcase/screenshots/features/docx/word-export-companion.png", |
| 627 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples/features/docx/WordExportExample.java" |
| 628 | + } |
| 629 | + ] |
| 630 | + }, |
| 631 | + { |
| 632 | + "id": "layout", |
| 633 | + "label": "Layout & Alignment", |
| 634 | + "examples": [ |
| 635 | + { |
| 636 | + "id": "block-align", |
| 637 | + "title": "Block Alignment", |
| 638 | + "description": "addAligned(align, node) / addSvgIcon(icon, w, align) — seat any fixed-size node left / centre / right across the content width.", |
| 639 | + "tags": ["layout", "layout", "align", "v1.8"], |
| 640 | + "pdf": "showcase/pdf/features/layout/block-align.pdf", |
| 641 | + "screenshot": "showcase/screenshots/features/layout/block-align.png", |
| 642 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples/features/layout/Block Align" |
| 643 | + } |
| 644 | + ] |
| 645 | + }, |
| 646 | + { |
| 647 | + "id": "svg", |
| 648 | + "label": "SVG Import", |
| 649 | + "examples": [ |
| 650 | + { |
| 651 | + "id": "svg-icon-gallery", |
| 652 | + "title": "SVG Icon Gallery", |
| 653 | + "description": "34 real-world multicolour svgrepo icons through SvgIcon.parse — native vector layers, the whole set 156 KB of sources.", |
| 654 | + "tags": ["svg", "svg", "icons", "v1.8"], |
| 655 | + "pdf": "showcase/pdf/features/svg/svg-icon-gallery.pdf", |
| 656 | + "screenshot": "showcase/screenshots/features/svg/svg-icon-gallery.png", |
| 657 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples/features/svg/Svg Icon Gallery" |
| 658 | + } |
| 659 | + ] |
567 | 660 | } |
568 | 661 | ] |
569 | 662 | }, |
|
584 | 677 | "screenshot": "showcase/screenshots/flagships/default/business-report.png", |
585 | 678 | "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples/flagships/BusinessReportExample.java" |
586 | 679 | }, |
| 680 | + { |
| 681 | + "id": "engine-deck", |
| 682 | + "title": "Engine Deck", |
| 683 | + "description": "Generated showcase for flagships / default.", |
| 684 | + "tags": ["flagships", "default"], |
| 685 | + "pdf": "showcase/pdf/flagships/default/engine-deck.pdf", |
| 686 | + "screenshot": "showcase/screenshots/flagships/default/engine-deck.png", |
| 687 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples" |
| 688 | + }, |
| 689 | + { |
| 690 | + "id": "feature-catalog", |
| 691 | + "title": "Feature Catalog", |
| 692 | + "description": "Generated showcase for flagships / default.", |
| 693 | + "tags": ["flagships", "default"], |
| 694 | + "pdf": "showcase/pdf/flagships/default/feature-catalog.pdf", |
| 695 | + "screenshot": "showcase/screenshots/flagships/default/feature-catalog.png", |
| 696 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples" |
| 697 | + }, |
| 698 | + { |
| 699 | + "id": "financial-report", |
| 700 | + "title": "Financial Report", |
| 701 | + "description": "Generated showcase for flagships / default.", |
| 702 | + "tags": ["flagships", "default"], |
| 703 | + "pdf": "showcase/pdf/flagships/default/financial-report.pdf", |
| 704 | + "screenshot": "showcase/screenshots/flagships/default/financial-report.png", |
| 705 | + "code": "https://github.com/DemchaAV/GraphCompose/blob/develop/examples/src/main/java/com/demcha/examples" |
| 706 | + }, |
587 | 707 | { |
588 | 708 | "id": "master-showcase", |
589 | 709 | "title": "Master Showcase", |
|
0 commit comments