º£²ó¤ÏÁ°²ó¤Ë³¤­Go¸À¸ì¤Î¥é¥¤¥Ö¥é¥êgopdf¤ò»È¤Ã¤ÆPDF¤ò°·¤¦ÊýË¡¤ò¾Ò²ð¤·¤Þ¤¹¡£Á°²ó¤Ï´ðËÜŪ¤Êgopdf¤Î»È¤¤Êý¤ò³Îǧ¤·¤Þ¤·¤¿¡£º£²ó¤Ï¤Ò¤Ê·Á¤ÎÎμý½ñPDF¤Ë¶â³Û¤ä°¸Ì¾¤ò½ñ¤­¹þ¤ó¤ÇÎμý½ñ¤òưŪ¤ËÀ¸À®¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£

¤Ò¤Ê·ÁPDF¤ò¸µ¤Ë¤·¤ÆÎμç½ñ¤òÀ¸À®¤¹¤ë¥Ä¡¼¥ë¤òºî¤ê¤Þ¤·¤ç¤¦


¡ûºÇ½é¤Ë¿·µ¬¥×¥í¥¸¥§¥¯¥È¤òºîÀ®¤·¤è¤¦

Á°²ó¤Ï¡¢gopdf¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ´Êñ¤ÊPDF¤òºîÀ®¤¹¤ëÊýË¡¤ò³Îǧ¤·¤Þ¤·¤¿¡£Éü½¬¤ò¤³¤á¤Æ¡¢go1.16¤ËÂбþ¤·¤¿¥×¥í¥¸¥§¥¯¥È¤ÎÀ¸À®¤«¤é¥â¥¸¥å¡¼¥ë¤Î¥¤¥ó¥¹¥È¡¼¥ë¤Þ¤Çºî¶È¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£

ºÇ½é¤ËŬÅö¤Ê¥Õ¥©¥ë¥À¤Ç¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó(Windows¤Ê¤éPowerShell¡¢macOS¤Ê¤é¥¿¡¼¥ß¥Ê¥ë)¤ò³«¤¤¤Æ¡¢°Ê²¼¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¿·µ¬¥â¥¸¥å¡¼¥ë¤òºîÀ®¤·¤Þ¤·¤ç¤¦¡¥º£²ó¤Ï¡¢writepdf¤È¤¤¤¦Ì¾Á°¤Ë¤·¤Æ¤ß¤Þ¤¹¡£

go mod init writepdf

¤¹¤ë¤È¡¢go.mod ¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£¤½¤·¤Æ¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ò¥Æ¥­¥¹¥È¥Õ¥¡¥¤¥ë¤Ê¤É¤Ç³«¤¤¤Æ¡¢gopdf¤òÍøÍѤ¹¤ë»Ý(£²¹ÔÌܤΰì¹Ô)¤òÄɵ­¤·¤Þ¤¹¡£

module writepdf

require github.com/signintech/gopdf v0.9.15

¤½¤Î¸å¡¢°Ê²¼¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¡¢gopdf¥â¥¸¥å¡¼¥ë¤Î¥¤¥ó¥¹¥È¡¼¥ë¤ò¹Ô¤¤¤Þ¤¹¡£

go mod download github.com/signintech/gopdf

go mod tidy

¡û¥Õ¥©¥ó¥È¤ÈPDF¤Î¤Ò¤Ê·Á¤òÍÑ°Õ¤·¤è¤¦

¤½¤ì¤«¤é¡¢Á°²ó¤ÈƱ¤¸¤¯PDFºîÀ®¤ËÆüËܸì¥Õ¥©¥ó¥È¤ò»È¤¤¤Þ¤¹¡£IPAex¥Õ¥©¥ó¥È¤ÎIPAex¥´¥·¥Ã¥¯¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¥×¥í¥°¥é¥à¤ÈƱ¤¸¥Õ¥©¥ë¥À¤Ë¥³¥Ô¡¼¤·¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£

¤Þ¤¿¡¢º£²ó¤ÏÎμý½ñ¤Î¤Ò¤Ê·Á¤È¤Ê¤ëPDF¤Ë½ñ¤­¹þ¤ß¤ò¹Ô¤¤¤Þ¤¹¡£¤³¤³¤Ç¤Ï¡¢°Ê²¼¤Î¤è¤¦¤Ê¤Ò¤Ê·Á¤È¤Ê¤ëPDF¥Õ¥¡¥¤¥ë¡Ötemplate.pdf¡×¤òÍÑ°Õ¤·¤Þ¤·¤¿¡£¤³¤Á¤é¤«¤é¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤¹¡£¥À¥¦¥ó¥í¡¼¥É¤·¤¿¤é¡Ötemplate.pdf¡×¤òƱ¤¸¥Õ¥©¥ë¥À¤Ë¥³¥Ô¡¼¤·¤Þ¤·¤ç¤¦¡£

Îμý½ñ¤Î¤Ò¤Ê·ÁPDF


¤¹¤ë¤È¡¢¥Ç¥£¥ì¥¯¥È¥ê¤Î¥Õ¥¡¥¤¥ë¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¥×¥í¥¸¥§¥¯¥È¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¥Õ¥¡¥¤¥ë


¡û¤Ò¤Ê·ÁPDF¤òÆɤ߹þ¤à¥×¥í¥°¥é¥à¤òºî¤í¤¦

¤½¤·¤Æ¡¢¤Þ¤º¤Ï¤Ò¤Ê·ÁPDF¤òÆɤ߹þ¤à¤À¤±¤Î¥×¥í¥°¥é¥à¤òºî¤ê¤Þ¤·¤ç¤¦¡£¤ä¤ê¤¿¤¤»ö¤È¤·¤Æ¤Ï¡¢¤Ò¤Ê·ÁPDF¤Ë¥Æ¥­¥¹¥È¤ò½ñ¤­¹þ¤à¤Î¤Ç¤¹¤¬¡¢¼ÂºÝ¤Î½èÍý¤È¤·¤Æ¤Ï¡¢¿·µ¬PDF¤òºîÀ®¤·¤Æ¤½¤³¤Ë´û¸¤ÎPDF¤òÆɤ߹þ¤ó¤Çɽ¼¨¤¹¤ë¤Î¤Ç¤¹¡£¤Ê¤ª¡¢¤Ò¤Ê·Á¤òÆɤ߹þ¤ó¤À¤À¤±¤À¤È¡¢¤Ò¤Ê·Á¤ÎPDF¤ÈƱ¤¸¤Ç¶èÊ̤¬ÉÕ¤­¤Ë¤¯¤¤¤Î¤Ç¡¢º¸¾å¤«¤é±¦²¼¤Ë°ìËÜ·ÓÀþ¤òÆþ¤ì¤Æ¡¢¤Ò¤Ê·Á¤ò°Û¤Ê¤ë¤³¤È¤ò¼¨¤·¤Þ¤·¤¿¡£

°Ê²¼¤Î¤è¤¦¤Ê¡Öwritepdf.go¡×¤È¤¤¤¦¥×¥í¥°¥é¥à¤òºîÀ®¤·¤Þ¤¹¡£

package main

import (

"github.com/signintech/gopdf"

)

func main() {

// gopdf ¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ® --- (*1)

pdf := gopdf.GoPdf{}

// ¤Ò¤Ê·Á¤Ë¹ç¤ï¤»¤ÆÍÑ»æ¤Ï²£¸þ¤­¤ÎA4¤È¤¹¤ë --- (*2)

A4 := *gopdf.PageSizeA4

A4Yoko := gopdf.Rect{W: A4.H, H: A4.W}

pdf.Start(gopdf.Config{PageSize: A4Yoko})

pdf.AddPage()

// ¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥Ý¡¼¥È --- (*3)

template := pdf.ImportPage("./template.pdf", 1, "/MediaBox")

// ¥¤¥ó¥Ý¡¼¥È¤·¤¿PDF¤òPDF¤ÇŬÍѤ¹¤ë --- (*4)

pageH := 1080 * (A4Yoko.W / 1920) // ¥Æ¥ó¥×¥ì¡¼¥È¥µ¥¤¥º (1920x1080)

pdf.UseImportedTemplate(template, 0, 0, A4Yoko.W, pageH)

// ŬÅö¤ËÀþ¤òÆþ¤ì¤ë

pdf.Line(0, 0, A4Yoko.W, A4Yoko.H)

// PDF¤ò¥Õ¥¡¥¤¥ë¤Ë½ñ¤­½Ð¤¹ --- (*5)

pdf.WritePdf("ryosyusyo.pdf")

}

³¤¤¤Æ°Ê²¼¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤·¤ç¤¦¡£¤¹¤ë¤È¡¢¡Öryosyusyo.pdf¡×¤È¤¤¤¦PDF¤¬À¸À®¤µ¤ì¤Þ¤¹¡£

go run .

À¸À®¤µ¤ì¤¿PDF¤ò³«¤¯¤È¼¡¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£

¿·µ¬PDF¤Ë´û¸¤ÎPDF¤ò¼è¤ê¹þ¤ó¤Ç¤ß¤¿¤È¤³¤í


¥×¥í¥°¥é¥à¤ò³Îǧ¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£(¡ö1)¤ÎÉôʬ¤Ç¤Ïgopdf¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Þ¤¹¡£¤½¤·¤Æ¡¢(¡ö2)¤Ç¤ÏÍÑ»æÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£¤³¤³¤Ç¤Ï¡¢²£¸þ¤­¤ÎA4¤Ë¤·¤¿¤¤¤Î¤Ç¤¹¤¬¡¢Íѻ極¥¤¥º¤Ï½Ä¸þ¤­¤·¤«ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ç¡¢´º¤¨¤ÆA4Yoko¤È¤¤¤¦Íѻ極¥¤¥º¤òÄêµÁ¤·¤Þ¤·¤¿¡£

¤½¤·¤Æ¡¢(¡ö3)¤Ç¤Ï¤Ò¤Ê·Á¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£ImportPage¥á¥½¥Ã¥É¤ò»È¤Ã¤Æ¼è¤ê¹þ¤ß¤Þ¤¹¡£¤Ê¤ª¡¢¤É¤ó¤Ê·Á¼°¤ÎPDF¤Ç¤â¼è¤ê¹þ¤á¤ë¤È¤¤¤¦Ìõ¤Ç¤Ï¤Ê¤¤¤è¤¦¤Ç¤¹¡£´ðËÜŪ¤ÊPDF¤Ï¼è¤ê¹þ¤á¤ë¤è¤¦¤Ç¤¹¤¬Æɤá¤Ê¤¤¤³¤È¤â¤¢¤ë¤è¤¦¤Ç¤¹¡£¤½¤Î¾ì¹ç¤Ï¡¢Ê̤Υġ¼¥ë¤ò»È¤Ã¤ÆPDF¤Î·Á¼°¤òñ½ã¤Ê¤â¤Î¤ËÊÑ´¹¤·¤¿¤ê¡¢¤¢¤ë¤¤¤Ï¡¢²èÁü¤ËÊÑ´¹¤·¤¿¤ê¤¹¤ë¤³¤È¤Ç²óÈò¤Ç¤­¤Þ¤¹¡£

¤È¤³¤í¤Ç¡¢¥¤¥ó¥Ý¡¼¥È¤·¤¿PDF¤Ï¡¢¼ÂºÝ¤ËÇÛÃÖ¤·¤Æ¤Ï¤¸¤á¤Æ¸«¤¨¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£(¡ö4)¤ÎUseImportedTemplate¥á¥½¥Ã¥É¤ò»È¤Ã¤Æ¥Ú¡¼¥¸¤ËÇÛÃÖ¤·¤Þ¤¹¡£¤³¤Î¤È¤­¡¢ÇÛÃÖ¤¹¤ëºÂɸ¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤³¤Ç¤Ï¿·µ¬PDF¤Ë¤Ô¤Ã¤¿¤êÇÛÃÖ¤·¤Þ¤¹¡£¤½¤ÎºÝ¡¢½Ä²£È椬Êø¤ì¤Ê¤¤¤è¤¦¤Ë¥µ¥¤¥º¤ò·×»»¤·¤ÆŽ¤êÉÕ¤±¤Þ¤·¤ç¤¦¡£¤³¤³¤Ç¤Ò¤Ê·Á¤È¤·¤ÆÍÑ°Õ¤·¤¿PDF¤Ï1920¡ß1080¥Ý¥¤¥ó¥È¤Ç¤·¤¿¡£¤½¤Î¤¿¤á¡¢¤³¤ì¤òA4²£¥µ¥¤¥º¤Ë¼ý¤Þ¤ë¤è¤¦¤Ë¥µ¥¤¥º¤ò·×»»¤·¤Þ¤·¤¿¡£¤½¤·¤Æ¡¢ºÇ¸å(¡ö5)¤ÇPDF¥Õ¥¡¥¤¥ë¤Ë½ñ¤­½Ð¤·¤Þ¤¹¡£

¡ûǤ°Õ¤Î¥Æ¥­¥¹¥È¤òº¹¤·¹þ¤â¤¦

PDF¤Î¤Ò¤Ê·Á¤òÆɤ߹þ¤ó¤À¤é¡¢¸å¤Ï¥Æ¥­¥¹¥È¤òº¹¤·¹þ¤à¤è¤¦¤Ê¥×¥í¥°¥é¥à¤òºî¤ë¤À¤±¤Ç¤¹¡£¤È¤Ï¸À¤¨¡¢¥Æ¥­¥¹¥È¤ò¤Ô¤Ã¤¿¤êº¹¤·¹þ¤ß¤¿¤¤ºÂɸ¤òÄ´¤Ù¤ë¤Î¤â´Êñ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤½¤³¤Ç¡¢10pt¤´¤È¤Ë·ÓÀþ¤ò°ú¤¤¤Æ¤À¤¤¤¿¤¤¤Î°ÌÃÖ¤òµá¤á¤é¤ì¤ë¤è¤¦¤Ë¤·¤Þ¤·¤ç¤¦¡£¤½¤Î¾å¤Ç¥Æ¥­¥¹¥È¤òº¹¤·¹þ¤ß¤Þ¤¹¡£

Ʊ¤¸¤¯¡Öwritepdf.go¡×¤ò¼¡¤Î¤è¤¦¤Ë½ñ¤­´¹¤¨¤Þ¤·¤ç¤¦¡£

package main

import (

"github.com/signintech/gopdf"

)

func main() {

// gopdf ¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ® --- (*1)

pdf := gopdf.GoPdf{}

// ¤Ò¤Ê·Á¤Ë¹ç¤ï¤»¤ÆÍÑ»æ¤Ï²£¸þ¤­¤ÎA4¤È¤¹¤ë

A4 := *gopdf.PageSizeA4

A4Yoko := gopdf.Rect{W: A4.H, H: A4.W}

pdf.Start(gopdf.Config{PageSize: A4Yoko})

pdf.AddPage()

// ¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥Ý¡¼¥È --- (*2)

template := pdf.ImportPage("./template.pdf", 1, "/MediaBox")

pageH := 1080 * (A4Yoko.W / 1920)

pdf.UseImportedTemplate(template, 0, 0, A4Yoko.W, pageH)

// ¥°¥ê¥Ã¥ÉÀþ¤òÆþ¤ì¤ë --- (*3)

drawGrid(&pdf, &A4Yoko)

// TTF¥Õ¥©¥ó¥È¤ò¼è¤ê¹þ¤à --- (*4)

err := pdf.AddTTFFont("ipaexg", "./ipaexg.ttf")

if err != nil {

panic(err)

}

//¡¡Ê¸»ú¤ò½ñ¤­¹þ¤à --- (*5)

// °¸Ì¾

pdf.SetFont("ipaexg", "", 28)

drawText(&pdf, 300, 140, "»³ÅÄ ÂÀϺ")

// ÆüÉÕ

pdf.SetFont("ipaexg", "", 15)

drawText(&pdf, 600, 100, "3") // ǯ

drawText(&pdf, 635, 100, "10") // ·î

drawText(&pdf, 676, 100, "15") // Æü

// ¶â³Û

pdf.SetFont("ipaexg", "", 28)

drawText(&pdf, 280, 200, "¡ï 15,800 -")

// PDF¤ò¥Õ¥¡¥¤¥ë¤Ë½ñ¤­½Ð¤¹ --- (*6)

pdf.WritePdf("ryosyusyo.pdf")

}

func drawText(pdf *gopdf.GoPdf, x float64, y float64, s string) {

pdf.SetX(x)

pdf.SetY(y)

pdf.Cell(nil, s)

}

func drawGrid(pdf *gopdf.GoPdf, page *gopdf.Rect) {

ww := 10.0

for i := 1; i < int(page.W/ww); i++ {

if i%10 == 0 {

pdf.SetLineWidth(0.8)

pdf.SetStrokeColor(50, 50, 100)

} else {

pdf.SetLineWidth(0.3)

pdf.SetStrokeColor(100, 100, 130)

}

x, y := float64(i)*ww, float64(i)*ww

pdf.Line(x, 0, x, page.H)

pdf.Line(0, y, page.W, y)

}

}

Ʊ¤¸¤¯¡Ögo run .¡×¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢¡Öryosyusyo.pdf¡×¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤³¤ì¤ò³«¤¯¤È¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£10pt¤º¤Ä¤Ë·ÓÀþ¤¬°ú¤«¤ì¤ë¤Î¤Ç¡¢¥Æ¥­¥¹¥È¤òº¹¤·¹þ¤àºÂɸ¤¬Ê¬¤«¤ê¤ä¤¹¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£

·ÓÀþ¤ò°ú¤¤¤ÆºÂɸ¤òÄ´¤Ù¤ä¤¹¤¯¤·¤¿¤È¤³¤í


¥×¥í¥°¥é¥à¤ò³Îǧ¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£(¡ö1)¤ÎÉôʬ¤Ç¤ÏA4²£¥µ¥¤¥º¤Çgopdf¤ò¥»¥Ã¥È¥¢¥Ã¥×¤·¤Þ¤¹¡£¤½¤·¤Æ¡¢(¡ö2)¤Ç¤Ò¤Ê·ÁPDF¤ò¼è¤ê¹þ¤ß¤Þ¤¹¡£(¡ö3)¤ÎÉôʬ¡¢¤ª¤è¤Ó¥×¥í¥°¥é¥àËöÈø¤ÎdrawGrid´Ø¿ô¤Ç10pt¤´¤È¤Ë¥°¥ê¥Ã¥ÉÀþ¤òÉÁ²è¤·¤Þ¤¹¡£

¤½¤·¤Æ¡¢(¡ö4)¤ÎÉôʬ¤Ç¤ÏTTF¥Õ¥©¥ó¥È¤ò¼è¤ê¹þ¤ß¡Öipaexg¡×¤È¤¤¤¦Ì¾Á°¤ÇÍøÍѤǤ­¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£(¡ö5)°Ê¹ß¤ÎÉôʬ¤Ç°¸Ì¾¤äÆüÉÕ¡¢¶â³Û¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£ºÇ¸å(¡ö6)¤ÇPDF¤ò½ñ¤­½Ð¤·¤Þ¤¹¡£

¡û¥°¥ê¥Ã¥ÉÀþ¤ò¾Ã¤·¤Æ´°À®

¤³¤Î¤è¤¦¤Ë¤·¤Æ¡¢¥Æ¥­¥¹¥È¤Î°ÌÃÖ¤òÄ´À°¤·¤¿¤é¡¢¥×¥í¥°¥é¥à¤Î(¡ö3)¤Ëµ­½Ò¤·¤¿drawGrid´Ø¿ô¤Î¸Æ½Ð¤ò¾Ã¤·¤Þ¤¹¡£

¥°¥ê¥Ã¥ÉÀþ¤ò¾Ã¤·¤¿¤éÎμý½ñ¤Î´°À®


¤¢¤È¤Ï¡¢CSV¥Õ¥¡¥¤¥ë¤Ê¤É¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤ó¤ÇPDF¤òÀ¸À®¤¹¤ë¤è¤¦¤Ê½èÍý¤ò½ñ¤­²Ã¤¨¤ì¤Ð¡¢Î©ÇɤÊÎμý½ñÀ¸À®¥Ä¡¼¥ë¤Î´°À®¤¹¤ë¤Ç¤·¤ç¤¦¡£

¡û¤Þ¤È¤á

°Ê¾å¡¢Á°²ó¤Èº£²ó¤ÇPDF¤ò°·¤¦¥×¥í¥°¥é¥à¤òºî¤Ã¤Æ¤ß¤Þ¤·¤¿¡£¤³¤³¤Ç¸«¤¿¤È¤ª¤êgopdf¤ÏɬÍפʵ¡Ç½¤òÌÖÍ夷¤Æ¤¤¤Ê¤¬¤é¤â¡¢¥·¥ó¥×¥ë¤Ç»È¤¤¾¡¼ê¤¬Îɤ¤¤È´¶¤¸¤Þ¤·¤¿¡£

Go¸À¸ì¤Çºî¤Ã¤Æ¤ª¤±¤ÐÇÛÉÛ¤â´Êñ¤Ê¤Î¤¬Îɤ¤ÅÀ¤Ç¤¹¡£¤Ê¤ªGo¸À¸ì1.16¤Ç¤ÏÇÛÉÛ¤¹¤ë¥Ð¥¤¥Ê¥ê¤Ë¥×¥í¥°¥é¥à¤ÇÍøÍѤ¹¤ë¥ê¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤âźÉդǤ­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£¤³¤Î»ÅÁȤߤò»È¤¨¤Ð¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ë¤ä¤Ò¤Ê·Á¥Õ¥¡¥¤¥ë¤â¼Â¹Ô¥Õ¥¡¥¤¥ë¤Ë´Þ¤á¤é¤ì¤Þ¤¹¡£ÇÛÉÛ¤¬¤è¤êÊØÍø¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡£

¼«Í³·¿¥×¥í¥°¥é¥Þ¡¼¡£¤¯¤¸¤é¤Ï¤ó¤É¤Ë¤Æ¡¢¥×¥í¥°¥é¥ß¥ó¥°¤Î³Ú¤·¤µ¤òÅÁ¤¨¤ë³èÆ°¤ò¤·¤Æ¤¤¤ë¡£Âåɽºî¤Ë¡¢ÆüËܸì¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¡Ö¤Ê¤Ç¤·¤³¡× ¡¢¥Æ¥­¥¹¥È²»³Ú¡Ö¥µ¥¯¥é¡×¤Ê¤É¡£2001ǯ¥ª¥ó¥é¥¤¥ó¥½¥Õ¥ÈÂç¾ÞÆþ¾Þ¡¢2004ǯÅṲ̀Ƨ¥æ¡¼¥¹ ¥¹¡¼¥Ñ¡¼¥¯¥ê¥¨¡¼¥¿Ç§Äê¡¢2010ǯ OSS¹×¸¥¼Ô¾Ï¼õ¾Þ¡£µ»½Ñ½ñ¤â¿¤¯¼¹É®¤·¤Æ¤¤¤ë¡£Ä¾¶á¤Ç¤Ï¡¢¡Ö¥·¥´¥È¤¬¤Ï¤«¤É¤ë Python¼«Æ°½èÍý¤Î¶µ²Ê½ñ(¥Þ¥¤¥Ê¥Ó½ÐÈÇ)¡×¡Ö¤¹¤°¤Ë»È¤¨¤ë!¶È̳¤Ç¼ÂÁ©¤Ç¤­¤ë! Python¤Ë¤è¤ëAI¡¦µ¡³£³Ø½¬¡¦¿¼Áسؽ¬¥¢¥×¥ê¤Î¤Ä¤¯¤êÊý TensorFlow2Âбþ(¥½¥·¥à)¡×¡Ö¥Þ¥ó¥¬¤Ç¤¶¤Ã¤¯¤ê³Ø¤ÖPython(¥Þ¥¤¥Ê¥Ó½ÐÈÇ)¡×¤Ê¤É¡£