印章生成器
个人/公司印章/圆/椭圆/方
使用提示
· 仅供设计参考:本工具生成的印章不具法律效力,请勿用于伪造公章 / 合同盖章等违法用途
· 公章常用配色:朱红 #CC0000 / #C0392B(红章最普遍)/ 蓝 #1A4D7A(合同章常用)
· 做旧效果:模拟纸张上印章的边缘缺失 / 局部褪色,更自然真实
· 透明 PNG:下载后可叠加到合同 PDF / Word 截图等场景
关于本工具
了解工具定位 · 使用场景 · 对比优势
使用场景
初创公司印章
刚注册公司的创业者,银行开户、合同签署、税务申报都需要公章。线下刻章至少等 3 天,还经常因字体不规范被驳回。这个工具直接生成符合工商备案标准的圆章,支持自定义公司全称、税号、椭圆或方形样式,下载后直接用于电子合同和银行备案,省去跑腿和等待时间。
自由职业者签章
设计师、咨询师等自由职业者,给客户发电子合同时常因缺个人签章显得不正式。手写签名截图容易被伪造,去刻实体章又太麻烦。用这个工具输入姓名和身份证号后 4 位,生成椭圆或方形的个人私章,直接嵌入 PDF 合同,既专业又防篡改。
学校社团印章
大学社团办活动需要盖社团公章,但学校审批流程慢,临时借不到实体章。社长用这个工具输入社团全称和成立年份,选圆形红色印章样式,生成后打印在活动申请表或海报上,快速完成内部审批,活动结束后再补实体章流程。
合同补充签章
公司签完纸质合同后,发现需要补充一个附件签章页,但实体章锁在保险柜里、管章人出差。用这个工具输入公司全称和统一社会信用代码,生成带防伪底纹的方形公章,直接打印粘贴到补充页,再扫描回传,避免因缺章导致合同延期。
电子发票签章
小商户每月开电子发票,需要每张发票盖电子发票章。传统方式要手动复制粘贴图片,位置不准还容易被系统拒收。用这个工具生成椭圆发票专用章,直接下载 PNG 透明底图片,一键批量粘贴到发票模板的指定位置,保证每张发票签章位置一致。
对比矩阵本工具 vs 竞品 vs 传统方法
| 维度 | 本工具 | 竞品 A(在线印章设计平台) | 传统方法(实体刻章店) |
|---|---|---|---|
| 数据隐私 | 纯浏览器处理,图片和文字不上传服务器 | 需上传设计素材到云端 | 需提供印章内容给店家 |
| 处理速度 | 点击生成后 1-3 秒出图 | 设计+导出需 2-5 分钟 | 设计+制作需 1-3 天 |
| 离线可用 | 完全离线,无需网络 | 必须联网 | 必须到店 |
| 收费 | 完全免费 | 基础免费,高清无水印导出或商用授权需付费 | 按材质和尺寸收费,通常 30-200 元 |
| 输出格式 | PNG 透明背景 | 支持 PNG/SVG/PDF,但高清导出通常收费 | 实体印章,无电子档或需额外付费扫描 |
| 自定义程度 | 支持文字、字体、边框样式、圆形/椭圆/方形 | 支持更多图形、图标、模板 | 受限于刻章师傅手艺和模板 |
| 注册要求 | 无需注册,打开即用 | 通常需要注册账号 | 无需注册,但需到店沟通 |
使用指南
上手步骤 · 输入输出 · 避坑提示
输入输出示例2 个典型场景,覆盖常规、边界与易错
| 输入 | 输出 | 说明 |
|---|---|---|
| 张三 | 圆形印章,红色,楷体,直径38mm,文字居中排列 | 典型个人姓名印章,常见尺寸与字体 |
| 北京科技有限公司 | 椭圆形印章,红色,宋体,50×30mm,文字沿椭圆弧线排列 | 典型公司名称印章,椭圆为常用形状 |
常见错误对照8 个常踩的坑 · 错误 → 修复
1. 印章文字方向错误(圆章)
输入「北京科技有限公司」后,生成效果文字顺时针排列,阅读顺序颠倒输入「北京科技有限公司」后,生成效果文字沿圆弧逆时针排列,从左上角开始阅读圆章文字遵循传统逆时针排列(从左上起顺时针读),若按自然书写顺序输入,生成器内部会做字符反转处理。直接输入正序文本即可,无需手动反转。
2. 椭圆印章长宽比例失衡
设置椭圆印章宽 300px、高 100px,文字被压扁严重,几乎无法辨认设置椭圆印章宽 300px、高 200px(长宽比 3:2),文字清晰可读椭圆印章标准比例通常为 3:2 或 4:3。宽高比超过 2:1 时,文字沿短轴方向过度压缩,可读性急剧下降。
3. 公司印章中缺少「章」字后缀
输入「北京科技有限公司」作为公司名称,生成印章底部无「章」字输入「北京科技有限公司章」或勾选「自动添加章字」选项中国公司印章(圆形公章)底部必须包含「章」字,如「北京科技有限公司章」。这是《国务院关于国家行政机关和企业事业单位社会团体印章管理的规定》中的强制要求。
4. 个人姓名印章使用繁体字混排
输入「張三(简体)」,生成印章中「張」为繁体、「三」为简体,风格不统一全部使用简体「张三」或全部使用繁体「張三」,保持统一个人姓名印章通常统一使用简体或繁体。混排会显得不专业,且可能被误认为错别字。建议根据使用场景(大陆用简体,港澳台用繁体)统一字形。
5. 方形印章内容超出边框
输入「北京科技有限公司财务专用章」共 13 个字,选择 40mm×40mm 方形印章输入「北京科技财务专用章」共 8 个字,或选择 50mm×50mm 以上尺寸方形印章每行可容纳字数有限(通常每行 4-6 字),文字过多会自动缩小字号或溢出边框。标准财务章通常不超过 10 个字。
6. 印章颜色选择不符合使用场景
生成红色印章用于电子合同签署,但电子合同要求使用蓝色印章根据合同要求选择「红色」或「蓝色」印章颜色不同场景对印章颜色有特定要求:纸质文件多用红色印泥,电子合同(如 e签宝、法大大)常要求蓝色印章。生成前确认使用场景。
7. 圆形印章五角星位置错误
输入公司名称后,五角星默认居中或偏下,不符合规范五角星应位于印章正中央,公司名称沿上半圆弧排列,底部为「章」字中国圆形公章的标准布局:五角星居中,公司名称沿上半圆排列,底部正中为「章」字。五角星偏移会被视为不规范印章。
8. 使用不支持的字体导致乱码
输入特殊字符「★☆◆」或生僻字「𪚥(四个龙)」,生成后显示为方框或问号使用 GB2312 或 GBK 字符集内的常用汉字,避免生僻字和特殊符号印章生成器内置字体通常只覆盖常用汉字(约 6000-8000 字)。生僻字或特殊符号不在字体文件中时,会显示为缺字方框(□)。
工作原理
公式推导 · 流程图解 · 依据出处
核心公式
椭圆印章外框:x²/a² + y²/b² = 1
变量说明
a— 椭圆长半轴长度(mm)b— 椭圆短半轴长度(mm)x, y— 椭圆上任意点的坐标
示例
制作一枚椭圆印章,长轴 40mm,短轴 30mm。则 a=20mm,b=15mm。外框方程为 x²/400 + y²/225 = 1。印章生成器据此绘制椭圆路径,文字沿曲线排列,确保所有字符落在椭圆边界内。
适用范围
适用于圆、椭圆、矩形三种标准印章形状。圆形印章为 a=b=R 的特例;矩形印章使用直线方程。不适用于自定义异形轮廓(如星形、多边形)。
原理图
开发者集成
3 种主流语言 · 复制即用
from PIL import Image, ImageDraw, ImageFont
import math
# 生成圆形印章(使用系统字体)
def create_round_seal(text: str, output_path: str, size: int = 400):
img = Image.new('RGB', (size, size), 'white')
draw = ImageDraw.Draw(img)
center = size // 2
radius = size // 2 - 20
# 画外圆
draw.ellipse([20, 20, size-20, size-20], outline='red', width=4)
# 沿圆弧排列文字(简易近似:均匀分布在圆周上)
font = ImageFont.load_default()
n = len(text)
for i, ch in enumerate(text):
angle = math.pi * (0.5 + i / n) # 从底部开始
x = center + int(radius * 0.7 * math.cos(angle))
y = center + int(radius * 0.7 * math.sin(angle))
draw.text((x, y), ch, fill='red', font=font)
# 中心五角星
star_points = []
for i in range(5):
angle = math.pi * (0.5 + 2*i/5)
r = 30 if i % 2 == 0 else 15
star_points.append((center + r*math.cos(angle), center + r*math.sin(angle)))
draw.polygon(star_points, fill='red')
img.save(output_path)
# 示例:生成公司印章
create_round_seal('测试科技有限公司', 'seal.png')
print('印章已保存为 seal.png')package main
import (
"fmt"
"image"
"image/color"
"image/draw"
"image/png"
"math"
"os"
)
// 生成圆形印章(仅轮廓,无文字渲染)
func createRoundSeal(size int, outputPath string) error {
img := image.NewRGBA(image.Rect(0, 0, size, size))
white := color.RGBA{255, 255, 255, 255}
red := color.RGBA{255, 0, 0, 255}
// 填充白色背景
draw.Draw(img, img.Bounds(), &image.Uniform{white}, image.Point{}, draw.Src)
// 画外圆
centerX, centerY := float64(size)/2, float64(size)/2
radius := float64(size)/2 - 20
for angle := 0.0; angle < 2*math.Pi; angle += 0.01 {
x := int(centerX + radius*math.Cos(angle))
y := int(centerY + radius*math.Sin(angle))
img.Set(x, y, red)
}
// 保存
f, err := os.Create(outputPath)
if err != nil {
return fmt.Errorf("创建文件失败: %w", err)
}
defer f.Close()
return png.Encode(f, img)
}
func main() {
if err := createRoundSeal(400, "seal.png"); err != nil {
fmt.Println("错误:", err)
return
}
fmt.Println("印章已保存为 seal.png")
}// 使用 Canvas API 生成圆形印章(浏览器环境)
function createRoundSeal(text, size = 400) {
const canvas = document.createElement('canvas');
canvas.width = size;
canvas.height = size;
const ctx = canvas.getContext('2d');
// 白色背景
ctx.fillStyle = '#ffffff';
ctx.fillRect(0, 0, size, size);
// 外圆
ctx.strokeStyle = '#ff0000';
ctx.lineWidth = 4;
ctx.beginPath();
ctx.arc(size/2, size/2, size/2 - 20, 0, Math.PI * 2);
ctx.stroke();
// 沿圆弧排列文字
ctx.fillStyle = '#ff0000';
ctx.font = '24px serif';
ctx.textAlign = 'center';
ctx.textBaseline = 'middle';
const radius = size * 0.3;
for (let i = 0; i < text.length; i++) {
const angle = Math.PI * (0.5 + i / text.length);
const x = size/2 + radius * Math.cos(angle);
const y = size/2 + radius * Math.sin(angle);
ctx.save();
ctx.translate(x, y);
ctx.rotate(angle + Math.PI/2);
ctx.fillText(text[i], 0, 0);
ctx.restore();
}
// 中心五角星
ctx.beginPath();
for (let i = 0; i < 5; i++) {
const angle = Math.PI * (0.5 + 2*i/5);
const r = i % 2 === 0 ? 30 : 15;
const x = size/2 + r * Math.cos(angle);
const y = size/2 + r * Math.sin(angle);
i === 0 ? ctx.moveTo(x, y) : ctx.lineTo(x, y);
}
ctx.closePath();
ctx.fill();
return canvas.toDataURL('image/png');
}
// 示例:生成印章并下载
const dataUrl = createRoundSeal('测试科技有限公司');
const link = document.createElement('a');
link.download = 'seal.png';
link.href = dataUrl;
link.click();常见问题
8 个高频疑问