@neabyte/chart-to-image
Version:
Convert trading charts to images using Node.js canvas with advanced features: 6 chart types, VWAP/EMA/SMA indicators, custom colors, themes, hide elements, scaling, and PNG/JPEG export formats.
46 lines (45 loc) • 1.2 kB
TypeScript
import { Canvas } from 'canvas';
import type { NodeChartData } from '../renderer/types.js';
export interface ComparisonLayout {
type: 'side-by-side' | 'grid';
columns?: number;
rows?: number;
gap?: number;
}
export interface ComparisonChart {
data: NodeChartData;
position: {
x: number;
y: number;
width: number;
height: number;
};
}
export declare class ComparisonRenderer {
private canvas;
private ctx;
private width;
private height;
private charts;
private layout;
constructor(width: number, height: number, layout?: ComparisonLayout);
addChart(chartData: NodeChartData, position?: {
x: number;
y: number;
width: number;
height: number;
}): void;
renderComparison(): Promise<void>;
private renderChartInPosition;
private calculatePosition;
private adjustMargins;
exportComparison(options: {
format: 'png' | 'jpeg' | 'jpg';
quality?: number;
}): Promise<Buffer>;
saveComparison(outputPath: string, options: {
format: 'png' | 'jpeg' | 'jpg';
quality?: number;
}): Promise<void>;
getCanvas(): Canvas;
}