ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

model: CSharp,Java,go,python

2026/8/3 7:11:17 拓冰建站 浏览量
model: CSharp,Java,go,python

csharp:

using System.Drawing;/// <summary>
/// 印章信息配置实体,对齐Python/Java/Go SealInfo
/// </summary>
public class SealInfo
{#region 文本内容/// <summary>公司名称</summary>public string CompanyName { get; set; }/// <summary>公章用途名称</summary>public string SealName { get; set; }/// <summary>组织机构代码</summary>public string OrgCode { get; set; }#endregion#region 字号参数public float FontSizeCompany { get; set; }public float FontSizeSeal { get; set; }public float FontSizeOrgCode { get; set; }#endregion#region 样式与绘图参数/// <summary>印章颜色,默认暗红色</summary>public Color SealColor { get; set; }/// <summary>纹理种子,null代表随机生成</summary>public long? TextureSeed { get; set; }/// <summary>划痕纹理数量</summary>public int TextureCount { get; set; }/// <summary>五角星半径</summary>public int StarRadius { get; set; }/// <summary>画布尺寸</summary>public int CanvasSize { get; set; }#endregion/// <summary>无参构造:统一设置全部默认值(.NET2.0唯一标准写法)</summary>public SealInfo(){CompanyName = string.Empty;SealName = string.Empty;OrgCode = string.Empty;FontSizeCompany = 32.0f;FontSizeSeal = 30.0f;FontSizeOrgCode = 22.0f;SealColor = Color.FromArgb(180, 0, 0);TextureSeed = null;TextureCount = 60;StarRadius = 110;CanvasSize = 960;}/// <summary>快捷构造:仅传入3个核心文本,其余使用默认值</summary>public SealInfo(string companyName, string sealName, string orgCode) : this(){CompanyName = companyName;SealName = sealName;OrgCode = orgCode;}
}

  

using System.Drawing;public class SealInfo
{public string CompanyName { get; set; } = string.Empty;public string SealName { get; set; } = string.Empty;public string OrgCode { get; set; } = string.Empty;public float FontSizeCompany { get; set; } = 32.0f;public float FontSizeSeal { get; set; } = 30.0f;public float FontSizeOrgCode { get; set; } = 22.0f;public Color SealColor { get; set; } = Color.FromArgb(180, 0, 0);public long? TextureSeed { get; set; } = null;public int TextureCount { get; set; } = 60;public int StarRadius { get; set; } = 110;public int CanvasSize { get; set; } = 960;// 快捷构造public SealInfo(string companyName, string sealName, string orgCode){CompanyName = companyName;SealName = sealName;OrgCode = orgCode;}
}

  

using System.Drawing;// 极简位置记录写法
public record SealInfoRecord(string CompanyName = "",string SealName = "",string OrgCode = "",float FontSizeCompany = 32.0f,float FontSizeSeal = 30.0f,float FontSizeOrgCode = 22.0f,Color SealColor = default,long? TextureSeed = null,int TextureCount = 60,int StarRadius = 110,int CanvasSize = 960)
{// 静态构造兜底颜色public SealInfoRecord() : this("", "", "", 32, 30, 22, Color.FromArgb(180,0,0), null,60,110,960){}// 简易构造public SealInfoRecord(string company, string seal, string code) : this(company, seal, code, 32, 30, 22, Color.FromArgb(180,0,0), null,60,110,960){}
}

  

java:

import java.awt.Color;/*** 印章信息实体,对应Python SealInfo*/
public class SealInfo {// 文本内容private String companyName = "";private String sealName = "";private String orgCode = "";// 字号private float fontSizeCompany = 32.0f;private float fontSizeSeal = 30.0f;private float fontSizeOrgCode = 22.0f;// 印章颜色private Color sealColor = new Color(180, 0, 0);// 纹理种子,null代表随机private Long textureSeed = null;private int textureCount = 60;private int starRadius = 110;private int canvasSize = 960;// 无参构造:使用全部默认值public SealInfo() {}// 全参构造public SealInfo(String companyName, String sealName, String orgCode) {this.companyName = companyName;this.sealName = sealName;this.orgCode = orgCode;}// Getter & Setterpublic String getCompanyName() {return companyName;}public void setCompanyName(String companyName) {this.companyName = companyName;}public String getSealName() {return sealName;}public void setSealName(String sealName) {this.sealName = sealName;}public String getOrgCode() {return orgCode;}public void setOrgCode(String orgCode) {this.orgCode = orgCode;}public float getFontSizeCompany() {return fontSizeCompany;}public void setFontSizeCompany(float fontSizeCompany) {this.fontSizeCompany = fontSizeCompany;}public float getFontSizeSeal() {return fontSizeSeal;}public void setFontSizeSeal(float fontSizeSeal) {this.fontSizeSeal = fontSizeSeal;}public float getFontSizeOrgCode() {return fontSizeOrgCode;}public void setFontSizeOrgCode(float fontSizeOrgCode) {this.fontSizeOrgCode = fontSizeOrgCode;}public Color getSealColor() {return sealColor;}public void setSealColor(Color sealColor) {this.sealColor = sealColor;}public Long getTextureSeed() {return textureSeed;}public void setTextureSeed(Long textureSeed) {this.textureSeed = textureSeed;}public int getTextureCount() {return textureCount;}public void setTextureCount(int textureCount) {this.textureCount = textureCount;}public int getStarRadius() {return starRadius;}public void setStarRadius(int starRadius) {this.starRadius = starRadius;}public int getCanvasSize() {return canvasSize;}public void setCanvasSize(int canvasSize) {this.canvasSize = canvasSize;}
}

  

import java.awt.Color;
public record SealInfoRecord(String companyName,String sealName,String orgCode,float fontSizeCompany,float fontSizeSeal,float fontSizeOrgCode,Color sealColor,Long textureSeed,int textureCount,int starRadius,int canvasSize
){// 无参构造,填充默认值public SealInfoRecord(){this("", "", "", 32.0f, 30.0f, 22.0f, new Color(180,0,0), null,60,110,960);}// 简易构造,只传3个文本public SealInfoRecord(String companyName,String sealName,String orgCode){this(companyName,sealName,orgCode,32.0f,30.0f,22.0f,new Color(180,0,0),null,60,110,960);}
}

  

import lombok.Data;
import java.awt.Color;@Data
public class SealInfoLombok {private String companyName = "";private String sealName = "";private String orgCode = "";private float fontSizeCompany = 32.0f;private float fontSizeSeal = 30.0f;private float fontSizeOrgCode = 22.0f;private Color sealColor = new Color(180,0,0);private Long textureSeed = null;private int textureCount = 60;private int starRadius = 110;private int canvasSize = 960;
}

  

go

package mainimport "image/color"// SealInfo 印章配置实体,对齐Python、Java
type SealInfo struct {// 文本内容CompanyName   stringSealName      stringOrgCode       string// 字号FontSizeCompany float32FontSizeSeal    float32FontSizeOrgCode float32// 印章颜色SealColor color.RGBA// 纹理种子,nil=随机TextureSeed *int64TextureCnt  intStarRadius  intCanvasSize  int
}// NewSealInfo 构造函数:统一设置全局默认值
func NewSealInfo() *SealInfo {return &SealInfo{CompanyName:   "",SealName:      "",OrgCode:       "",FontSizeCompany: 32.0,FontSizeSeal:    30.0,FontSizeOrgCode: 22.0,// 默认暗红色印章SealColor: color.RGBA{R: 180, G: 0, B: 0, A: 255},TextureSeed: nil,TextureCnt:  60,StarRadius:  110,CanvasSize:  960,}
}// 便捷构造:仅传入3个核心文本,其余使用默认
func NewSealInfoSimple(company, sealName, orgCode string) *SealInfo {info := NewSealInfo()info.CompanyName = companyinfo.SealName = sealNameinfo.OrgCode = orgCodereturn info
}

  

func main() {// 方式1:全部默认值info1 := NewSealInfo()// 方式2:仅自定义文本,其余默认info2 := NewSealInfoSimple("环球科技有限公司", "财务专用章", "9112345678")// 方式3:默认基础上局部修改参数info3 := NewSealInfo()info3.StarRadius = 125info3.TextureCnt = 80// 方式4:直接字面量初始化(手动覆盖部分字段,未写字段自动用零值,不推荐)info4 := &SealInfo{CompanyName: "测试公司",CanvasSize:  1024,}
}

  

python:

from dataclasses import dataclass, field
from typing import Optional@dataclass
class SealInfo:"""印章配置实体,对齐Java参数"""# 文字内容company_name: str = ""seal_purpose: str = ""org_code: str = ""# 字号font_company: float = 32.0font_purpose: float = 30.0font_orgcode: float = 22.0# 颜色RGBcolor_r: int = 180color_g: int = 0color_b: int = 0# 纹理种子,None=随机texture_seed: Optional[int] = Nonetexture_count: int = 60star_radius: int = 110canvas_size: int = 960

  

from dataclasses import dataclass@dataclass
class SealInfo:_company_name: str = ""_org_code: str = ""_font_company: float = 32.0_texture_count: int = 60@propertydef company_name(self):return self._company_name@company_name.setterdef company_name(self, val):clean = str(val).strip()if len(clean) > 45:raise ValueError("公司名称最大45字符")self._company_name = clean@propertydef font_company(self):return self._font_company@font_company.setterdef font_company(self, val):f = float(val)if not (15 <= f <= 60):raise ValueError("字号范围15~60")self._font_company = f@propertydef org_code(self):return self._org_code@org_code.setterdef org_code(self, val):self._org_code = val.strip()

  

class SealInfo:def __init__(self):# 私有底层存储self._company_name = ""self._seal_name = ""self._org_code = ""self._font_company = 32.0# ========== Getter ==========@propertydef company_name(self):"""获取公司名称"""print("执行getter读取company_name")return self._company_name# ========== Setter ==========@company_name.setterdef company_name(self, value):"""设置公司名称,可做校验、清洗、拦截非法值"""print("执行setter修改company_name")# 简单校验:去除首尾空格clean_val = str(value).strip()# 禁止超长名称if len(clean_val) > 50:raise ValueError("公司名称不能超过50个字符")self._company_name = clean_val@propertydef font_company(self):return self._font_company@font_company.setterdef font_company(self, val):# 字号范围限制num = float(val)if not (10 <= num <= 80):raise ValueError("字号必须在10~80之间")self._font_company = num

  

class SealInfo:def __init__(self):self._company_name = ""self._org_code = ""# getterdef getCompanyName(self):return self._company_name# setterdef setCompanyName(self, name):val = str(name).strip()if len(val) > 50:raise ValueError("名称过长")self._company_name = valdef getOrgCode(self):return self._org_codedef setOrgCode(self, code):self._org_code = code.strip()

  

from dataclasses import dataclass@dataclass
class SealInfo:# 真实存储用私有变量_company_name: str = ""_seal_name: str = ""_org_code: str = ""@propertydef companyName(self):return self._company_name@companyName.setterdef companyName(self, v):v = str(v).strip()if len(v) > 50:raise ValueError("名称超限")self._company_name = v@propertydef orgCode(self):return self._org_code@orgCode.setterdef orgCode(self, v):self._org_code = v.strip()