flywithu

Seunghee's Story

  • 증명서 pdf로 출력 하기 – 가상 프린터 virtual printer

    물리 프린터로 출력을 해야만 하는 증명서 들이 많습니다.


    인터넷 증명발급 테스트 (cak.or.kr)

    이렇게 일반적으로 지원 불가 프린터라고 나옵니다. 이 해결방법으로 ‘모두의 프린터’같은 것이 있습니다. 그러나 설치도 해야하고.. 그래서 가상 프린터를 만들어서 이러한 문서들을 pdf로 인쇄 해보려고 합니다.

    여기서는

    1. 아래 첨부의 드라이버를 다운 받아서 압축을 풉니다.

    2. 수동으로 프린터 추가를 합니다.

    3. IP로 추가를 선택 합니다.

    4. 주소는 printer.flywithu.com 으로 입력 합니다. device type은 tcp/ip로 합니다.

    5. Generic Network Card로 선택하고…

    7. Have Disk 로 수동으로 드라이버를 선택 합니다.

    8. 위에서 다운 받아서 압축을 푼 위치로 지정합니다.

    9. CLX-6200 PS로 선택 합니다.

    10. Print a Test 를 합니다.

    11. 이제 보안 출력 지원 하는 곳에 가서 프린터를 선택하면 인쇄 가능으로 뜹니다.

    12. 아래 주소를 접속하면 나의 IP와 PW, 그리고 파일들 리스트가 보입니다. 나의 IP로 된 파일을 다운 받아서, 압축을 해당 PW로 풀면은 PDF가 있습니다.

    Virtual Print

    alzip이나 7z으로 압축을 풀면이렇게 나오고, PW는 위 페이지의 5자리를 넣으면 됩니다.


    4 responses to “증명서 pdf로 출력 하기 – 가상 프린터 virtual printer”

    1. Jamesbrepe Avatar

      Melden Sie sich an, um ein Willkommenspaket im Wert von 1.000 USDT zu erhalten!

      Kaufen Sie Kryptowährungen https://www.bitget.com/de

    2. MichaelItact Avatar
      MichaelItact

      email-shops.com ]

      by – email-shops.com

    3. Robertkes Avatar

      Lovable Kawaii Fashion Finds: Get Prepared to Swoon! Are you a enthusiast of all items lovely, whimsical, and colorful? If so, then you’re in for a treat! These days, we are diving into the globe of kawaii style – a craze that has been capturing hearts all about the globe. Let’s take a peek inside a exclusive kawaii trend shop and investigate the countless prospects of this adorable and quirky style.

      Initial things first, let’s chat a small bit about what kawaii style is all about. Originating from Japan, kawaii fashion is all about embracing cuteness in every single factor of your outfit. From pastel hues to lovely prints, kawaii style is all about expressing your playful and entertaining aspect via your clothes alternatives. It is a craze that has been attaining popularity in modern several years and has identified a focused adhering to amid vogue fans of all ages.

      A Search Inside a Kawaii Style Retailer

      Phase inside a kawaii fashion store, and you are going to be greeted with a burst of colors and a whimsical atmosphere that will instantly set a smile on your encounter. The storefront is adorned with lovable decorations, showcasing the playful and youthful spirit of kawaii style. You can expect to find racks filled with garments, shelves stocked with add-ons, and displays of trinkets that will make your heart skip a beat.
      The Range of Kawaii Vogue Products

      When it arrives to kawaii fashion, the alternatives are limitless. From oversized sweaters adorned with adorable figures to cute dresses in pastel hues, there is anything for everybody in a kawaii vogue retailer. Equipment enjoy a critical function in finishing the look, with options like pastel-colored bags, glittery hair clips, and adorable socks incorporating a touch of whimsy to any outfit.
      Shopping Experience and Client Services

      One particular of the greatest things about searching at a kawaii trend retailer is the individualized and attentive customer support you may obtain. The welcoming employees is usually prepared to help you place together the excellent kawaii search, supplying styling ideas and recommendations alongside the way. Never be scared to attempt on various parts and experiment with mixing and matching to develop a look that is uniquely you.
      Embracing the Kawaii Fashion Development

      It truly is no shock that the kawaii style craze has been embraced by folks of all ages and backgrounds. Its playful and entertaining nature has a common attractiveness that resonates with vogue lovers around the globe. With the rise of social media, kawaii style has found a system to shine even brighter, with influencers and fans showcasing their favorite kawaii seems to encourage other people to embrace their inner kawaii fashionista.
      Final Ideas

      So, are you prepared to embrace the cuteness overload that is kawaii style? Regardless of whether you happen to be a longtime admirer or a newcomer to the development, you will find some thing magical about expressing your playful aspect by way of your garments choices. Head to a kawaii vogue keep or look through on the web retailers to find out a planet of cute vogue finds that will make your heart skip a conquer. Do not be frightened to blend and match, experiment with different designs, and most importantly, have fun with your fashion selections. After all, existence is also quick to wear dull outfits!
      

    Leave a Reply

    Your email address will not be published. Required fields are marked *

  • 홈페이지 인덱스는 함부로 바꾸는게 아닙니다. 방문자수 복구가 안되는구나.. ㅠㅠ

    같은 기간을 비교 한건데, 본 홈페이지 방문자수가 -86% 입니다.

    이때 무슨 일이 있었냐 하면, 지금은 홈페이지의 글들이 아래처럼 숫자로 연결되어 있습니다.

    https://www.flywithu.com/archives/7830

    이 전에는 archives/홈페이지 이런식으로 글의 주소가 제목이었습니다.

    제목으로 google등의 search engine 과 연결되어 있었고, 많은 방문이 이를 통해 이루어 졌는데, 인덱스를 숫자로 바꾸면서 와장창 링크가 다 깨지면서 방문자도 급감 했습니다.

    기존 링크가 자동연결되게 해 놓고 바꾸었어야 했는데, 아무생각 없이 진행을 했었네요. 그 이후로 아직 수개월이 지나도록 복구가 안되고 있습니다.

    글의 인덱스 링크를 바꾸기 전에 꼭 한번 기존 링크를 어떻게 할것인가 고려가 필요 합니다.


    Leave a Reply

    Your email address will not be published. Required fields are marked *

  • Azure AI computer Vision in Golang: ChatGPT Intergration Guide

    English follows Korean

    얼마전에 사진 정리 도구를 Piwigo에서 PhotoPrism으로 변경했습니다. Piwigo는 매우 좋은 어플리케이션이지만, PhotoPrism의 현대적인 느낌과 AI를 이용한 사진 분류기능이 매력적입니다. PhotoPrism은 Golang으로 개발되어 있으며, REST API를 통해 다양한 프로그래밍 언어로 활용할 수 있습니다. (Browse Your Life in Pictures – PhotoPrism). 그러나 여러 예시가 Golang이라 그것을 활용해 보았습니다. Golang은 처음이로 ChatGPT를 이용해서 Library와 Sample을 만들었습니다.

    AzureAI를 사용해 태그를 추가하고, Piwigo의 사진을 PhotoPrism에 업로드 하는 것이 골이 었고, AzureAI를 사용한 이유는 일정범위(개인용으로 충분한)에서 무료 사용기 가능하다는 점입니다.

    1. Azure AI 서비스 생성
    2. 샘플코드
      • 샘플코드 실행결과
      • 024/05/01 20:19:08 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:08 Download File
        2024/05/01 20:19:09 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:09 Image Tagging
        *적절한 테그 제안

        Tag: outdoor (Confidence: 0.99)
        Tag: building (Confidence: 0.99)
        Tag: sky (Confidence: 0.98)

        2024/05/01 20:19:13 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:13 Image Description
        Description Tag: building
        Description Tag: outdoor
        Caption: an ancient city with many ruins with Colosseum in the background (Confidence: 0.34)
        2024/05/01 20:19:14 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:14 Object Detection
        Object: kitchen appliance (Confidence: 0.50)
        Object: computer keyboard (Confidence: 0.51)
        Object: Laptop (Confidence: 0.85)
        Parent Object: computer (Confidence: 0.85)
        2024/05/01 20:19:15 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:15 Landmark Analysis
        Category: {building_ 0.83203125 0xc0001f79b0}
        *사물인식

        Landmark: Eiffel Tower

        ======================== Brand

        2024/05/01 20:19:16 Analyze - Brands
        *Brand인식

        Brand : [{HP 0.603 {569 586 77 71}}]
        Brand Tag: {person 0.987419068813324}
        Brand Tag: {clothing 0.9757296442985535}
        Brand Tag: {sky 0.9699560403823853}
    • 샘플 이미지 – 이미지의 HP 로고를 인식 합니다.
    • 라이브러리는 여기에(flywithu/azure-golang (github.com)) 있습니다. Code 역시 해당 사이트를 참고해도 되고, 아래를 참고 해도 됩니다.
    • Library 환경 설정
    • go mod init azure-golang
      go mod tidy
      export VISION_KEY="YOURKEY"
      go run
    • 실행 코드
    package main
    
    import (
    	"github.com/flywithu/azure-golang"
    	"fmt"
    	"log"
    	"os"
    	"net/http"
    	"io"
    
    )
    
    func main() {
    	VISION_ENDPOINT := "https://flywithufreevision.cognitiveservices.azure.com"
    	VISION_KEY := os.Getenv("VISION_KEY")
    
    	filePath:="temp.jpg"
    	// URLs for image analysis
    	landmarkImageURL := "https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/landmark.jpg"
    	kitchenImageURL := "https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/images/windows-kitchen.jpg"
    	eiffelTowerImageURL := "https://upload.wikimedia.org/wikipedia/commons/thumb/d/d4/Eiffel_Tower_20051010.jpg/1023px-Eiffel_Tower_20051010.jpg"
    	redShirtLogoImageURL := "https://publish-p47754-e237306.adobeaemcloud.com/adobe/dynamicmedia/deliver/dm-aid--08fdf594-c963-43c8-b686-d4ba06727971/noticia_madridistas_hp.app.png?preferwebp=true&width=1440"
    
    	client := vision.ComputerVisionClient(VISION_ENDPOINT, VISION_KEY)
    
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    	log.Println("Download File")
    	resp, err := http.Get(landmarkImageURL)
    	if err != nil {
    		panic(err)
    	}
    	defer resp.Body.Close()
    
    	out, err := os.Create(filePath)
    	if err != nil {
    		panic(err)
    	}
    	defer out.Close()
    
    	_, err = io.Copy(out, resp.Body)
    	if err != nil {
    		panic(err)
    	}
    
    
    
    	// Tagging an image
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    
    	log.Println("Image Tagging")
    	tags, err := client.GetImageTags(filePath)
    	if err != nil {
    		log.Fatalf("Failed to get image tags: %v", err)
    	}
    	for i, tag := range tags.Tags {
    		if i >= 3 { break }
    		fmt.Printf("Tag: %s (Confidence: %.2f)\n", tag.Name, tag.Confidence)
    	}
    
    	// Describing an image
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    
    	log.Println("Image Description")
    	description, err := client.GetImageDesc(filePath)
    	if err != nil {
    		log.Fatalf("Failed to get image description: %v", err)
    	}
    	for i, tag := range description.Description.Tags {
    		if i >= 3 { break }
    		fmt.Printf("Description Tag: %s\n", tag)
    	}
    	for i, caption := range description.Description.Captions {
    		if i >= 3 { break }
    		fmt.Printf("Caption: %s (Confidence: %.2f)\n", caption.Text, caption.Confidence)
    	}
    
    	// Object Detection
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    	log.Println("Object Detection")
    	objects, err := client.GetImageObject(kitchenImageURL)
    	if err != nil {
    		log.Fatalf("Failed to detect objects: %v", err)
    	}
    	for i, obj := range objects.Objects {
    		if i >= 3 { break }
    		fmt.Printf("Object: %s (Confidence: %.2f)\n", obj.ObjectInfo.ObjectName, obj.ObjectInfo.Confidence)
    		if obj.Parent != nil {
    			fmt.Printf("Parent Object: %s (Confidence: %.2f)\n", obj.Parent.ObjectName, obj.Parent.Confidence)
    		}
    	}
    
    	// Analyzing image for landmarks
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    
    	log.Println("Landmark Analysis")
    	landmarks, err := client.GetImageAnalyze(eiffelTowerImageURL)
    	if err != nil {
    		fmt.Printf("Failed to analyze landmarks: %v", err)
    	}
    	for i, cat := range landmarks.Categories {
    		if i >= 3 { break }
    		fmt.Printf("Category: %v\n", cat)
    		if cat.Detail != nil && len(cat.Detail.Landmarks) > 0 {
    			fmt.Printf("Landmark: %v\n", cat.Detail.Landmarks[0].Name)
    		}
    	}
    
    	// Analyzing brands
    	log.Println("Analyze - Brands")
    	brands, err := client.GetImageAnalyze(redShirtLogoImageURL)
    	if err != nil {
    		fmt.Printf("Failed to analyze brands: %v", err)
    	}
    	fmt.Printf("Brand : %v \n",brands.Brands)
    	for i, tag := range brands.Tags {
    		if i >= 3 { break }
    		fmt.Printf("Brand Tag: %v \n", tag)
    	}
    }
    

    I recently switched my photo organization tool from Piwigo to PhotoPrism. While Piwigo is a very good application, I found PhotoPrism’s modern UI and AI-powered photo capabilities appealing. PhotoPrism is developed in Golang and can be utilized with various languages through its REST API. However, since many examples are in Golang, I decided to use that. As it was my first time using Golang, I wrote libraries and samples with ChatGPT guidance.

    Adding tags with Azure AI and uploading photos to PhotoPrims was the goal, and the reason for using Azure AI is that it offers free usage, which is sufficient for personal use.

    1. Creating Azure AI Service
    2. Sample code
      • Execution Result
      • 024/05/01 20:19:08 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:08 Download File
        2024/05/01 20:19:09 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:09 Image Tagging
        *
        Suggested Tags
        Tag: outdoor (Confidence: 0.99)
        Tag: building (Confidence: 0.99)
        Tag: sky (Confidence: 0.98)

        2024/05/01 20:19:13 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:13 Image Description
        Description Tag: building
        Description Tag: outdoor
        Caption: an ancient city with many ruins with Colosseum in the background (Confidence: 0.34)
        2024/05/01 20:19:14 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:14 Object Detection
        Object: kitchen appliance (Confidence: 0.50)
        Object: computer keyboard (Confidence: 0.51)
        Object: Laptop (Confidence: 0.85)
        Parent Object: computer (Confidence: 0.85)
        2024/05/01 20:19:15 ++++++++++++++++++++++++++++++++++++++++++++++++
        2024/05/01 20:19:15 Landmark Analysis
        Category: {building_ 0.83203125 0xc0001f79b0}
        *
        Recognized the landmark
        Landmark: Eiffel Tower

        ======================== Brand

        2024/05/01 20:19:16 Analyze - Brands
        *
        Recognized the Brand
        Brand : [{HP 0.603 {569 586 77 71}}]
        Brand Tag: {person 0.987419068813324}
        Brand Tag: {clothing 0.9757296442985535}
        Brand Tag: {sky 0.9699560403823853}
    • Sample Image – Recognized the HP logo in the image.
    • The library and code can be found here(flywithu/azure-golang (github.com) , or refer to the following.
    • Setting the Library environment
    • go mod init azure-golang
      go mod tidy
      export VISION_KEY="YOURKEY"
      go run
    • Golang code
    package main
    
    import (
    	"github.com/flywithu/azure-golang"
    	"fmt"
    	"log"
    	"os"
    	"net/http"
    	"io"
    
    )
    
    func main() {
    	VISION_ENDPOINT := "https://flywithufreevision.cognitiveservices.azure.com"
    	VISION_KEY := os.Getenv("VISION_KEY")
    
    	filePath:="temp.jpg"
    	// URLs for image analysis
    	landmarkImageURL := "https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/landmark.jpg"
    	kitchenImageURL := "https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/images/windows-kitchen.jpg"
    	eiffelTowerImageURL := "https://upload.wikimedia.org/wikipedia/commons/thumb/d/d4/Eiffel_Tower_20051010.jpg/1023px-Eiffel_Tower_20051010.jpg"
    	redShirtLogoImageURL := "https://publish-p47754-e237306.adobeaemcloud.com/adobe/dynamicmedia/deliver/dm-aid--08fdf594-c963-43c8-b686-d4ba06727971/noticia_madridistas_hp.app.png?preferwebp=true&width=1440"
    
    	client := vision.ComputerVisionClient(VISION_ENDPOINT, VISION_KEY)
    
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    	log.Println("Download File")
    	resp, err := http.Get(landmarkImageURL)
    	if err != nil {
    		panic(err)
    	}
    	defer resp.Body.Close()
    
    	out, err := os.Create(filePath)
    	if err != nil {
    		panic(err)
    	}
    	defer out.Close()
    
    	_, err = io.Copy(out, resp.Body)
    	if err != nil {
    		panic(err)
    	}
    
    
    
    	// Tagging an image
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    
    	log.Println("Image Tagging")
    	tags, err := client.GetImageTags(filePath)
    	if err != nil {
    		log.Fatalf("Failed to get image tags: %v", err)
    	}
    	for i, tag := range tags.Tags {
    		if i >= 3 { break }
    		fmt.Printf("Tag: %s (Confidence: %.2f)\n", tag.Name, tag.Confidence)
    	}
    
    	// Describing an image
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    
    	log.Println("Image Description")
    	description, err := client.GetImageDesc(filePath)
    	if err != nil {
    		log.Fatalf("Failed to get image description: %v", err)
    	}
    	for i, tag := range description.Description.Tags {
    		if i >= 3 { break }
    		fmt.Printf("Description Tag: %s\n", tag)
    	}
    	for i, caption := range description.Description.Captions {
    		if i >= 3 { break }
    		fmt.Printf("Caption: %s (Confidence: %.2f)\n", caption.Text, caption.Confidence)
    	}
    
    	// Object Detection
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    	log.Println("Object Detection")
    	objects, err := client.GetImageObject(kitchenImageURL)
    	if err != nil {
    		log.Fatalf("Failed to detect objects: %v", err)
    	}
    	for i, obj := range objects.Objects {
    		if i >= 3 { break }
    		fmt.Printf("Object: %s (Confidence: %.2f)\n", obj.ObjectInfo.ObjectName, obj.ObjectInfo.Confidence)
    		if obj.Parent != nil {
    			fmt.Printf("Parent Object: %s (Confidence: %.2f)\n", obj.Parent.ObjectName, obj.Parent.Confidence)
    		}
    	}
    
    	// Analyzing image for landmarks
    	log.Println("++++++++++++++++++++++++++++++++++++++++++++++++")
    
    	log.Println("Landmark Analysis")
    	landmarks, err := client.GetImageAnalyze(eiffelTowerImageURL)
    	if err != nil {
    		fmt.Printf("Failed to analyze landmarks: %v", err)
    	}
    	for i, cat := range landmarks.Categories {
    		if i >= 3 { break }
    		fmt.Printf("Category: %v\n", cat)
    		if cat.Detail != nil && len(cat.Detail.Landmarks) > 0 {
    			fmt.Printf("Landmark: %v\n", cat.Detail.Landmarks[0].Name)
    		}
    	}
    
    	// Analyzing brands
    	log.Println("Analyze - Brands")
    	brands, err := client.GetImageAnalyze(redShirtLogoImageURL)
    	if err != nil {
    		fmt.Printf("Failed to analyze brands: %v", err)
    	}
    	fmt.Printf("Brand : %v \n",brands.Brands)
    	for i, tag := range brands.Tags {
    		if i >= 3 { break }
    		fmt.Printf("Brand Tag: %v \n", tag)
    	}
    }
    

    Leave a Reply

    Your email address will not be published. Required fields are marked *