" windows(으)로 태그된 글들"
페이지:12»

2 PDF에서 일부 페이지만 각각 발췌해서 머지하기

2020-05-28   //   alexken작성   //   기술  //  No Comments

업무상 서명해서 스캔한 PDF와 Office에서 PDF로 변환한 두 PDF 문서를 머지할 일이 잦아
배운적은 없지만 python으로 야매코딩.

macOS의 미리보기에서 필요한 페이지만 드래그해서 머지하는게 가장 깔끔한 방법이지만,
Windows만 있는 환경에서 할 필요도 있어서 만듬

import sys
from PyPDF2 import PdfFileWriter, PdfFileReader

def usage():
    print("#" * 100)
    print('''
[PDFCAT] by alexken@TTA
A.pdf [a~b] + B.pdf [c~d] -> C.pdf

Usage:
    $ python {} A.pdf a b B.pdf c d
    '''
.format(sys.argv[0]))
    print("#" * 100)

def merge_pdf(pdf_a, pdf_b):
    try:
        in_pdf_a = PdfFileReader(pdf_a["name"])
        in_pdf_b = PdfFileReader(pdf_b["name"])
        out_c = PdfFileWriter()
       
        if pdf_a["from"] == 0:
            pdf_a["from"] = 1
        if pdf_a["to"] == 0:
            pdf_a["to"] = in_pdf_a.getNumPages()
        if pdf_b["from"] == 0:
            pdf_b["from"] = 1
        if pdf_b["to"] == 0:
            pdf_b["to"] = in_pdf_b.getNumPages()

        for i in range(pdf_a["from"]-1, pdf_a["to"]):
            print( "{} page:{}".format(pdf_a["name"], i+1) )
            out_c.addPage(in_pdf_a.getPage(i))

        print( "+" )
 
        for i in range(pdf_b["from"]-1, pdf_b["to"]):  
            print( "{} page:{}".format(pdf_b["name"], i+1) )
            out_c.addPage(in_pdf_b.getPage(i))

        with open("C.pdf", "wb") as outputStream:
            out_c.write(outputStream)
    except:
        print(">>>> Fail to Merge")

if __name__ == "__main__":
    if len(sys.argv) == 7:
        merge_pdf({"name":sys.argv[1],"from":int(sys.argv[2]),"to":int(sys.argv[3])},
                  {"name":sys.argv[4],"from":int(sys.argv[5]),"to":int(sys.argv[6])})
    else:
        usage()

Windows cmd에서 자원사용률 측정

2019-11-22   //   alexken작성   //   기술  //  No Comments

Windows 에서 시스템 또는 특정 프로세스의 자원사용률(CPU, Memory…)을 측정할 때,
성능 모니터(perfmon.msc)를 주로 사용하는데, 동일한 작업을 cmd에서 수행하는 방법을 정리한 글이다.

GUI 도구인 perfmon.msc 대신 CUI 명령줄 도구인 typeperf가 동일한 기능을 수행한다.

typeperf < counter [counter ...] > [options]
typeperf -cf < filename > [options]
typeperf -q [object] [options]
typeperf -qx [object] [options]

사용 가능한 카운터 목록을 조회하려면

C:\> typeperf -qx > count.txt

하면되지만 1.8MB짜리 40만개나 되는 목록을 얻게된다.

그냥

C:\>typeperf -sc 60 -si 1 "\Processor(_Total)\% Processor Time" "\Memory\Available MBytes" -o SC1.csv
C:\>typeperf -sc 60 -si 1 "\Processor(_Total)\% Processor Time" "\Process(_Total)\Private Bytes"

60초 동안 1초 간격으로 시스템 전체의 CPU 사용률과 가용 메모리량을 SC1.csv에 저장함
(※파일로 저장할때는 %%)

Windows 8 DP 설치

2011-09-14   //   alexken작성   //   기술  //  1 Comment

집에 놀고 있는 델미니9가 아까워서 Windows8 DP를 깔았음.

다운로드 링크

영문판 Developer Preview여도 UI만 영문이고, 설치시에 한국 Locale및 IME 선택할 수 있었음.

많이 가벼워 졌다고 해서 설치해 봤는데, 쾌적하다면 거짓말이고, 그냥 쓸만하다는 정도임.

설치 과정

  • 별거 없음
  • 디바이스 드라이버는 Windows7용으로, Intel GMA950+Chipset, JMicron JMB38X(카드 리더기) 해서 총 3개를 깔아서 완료.
  • 블루투스, 유무선 네트워크등은 그냥 동작

UX가 많이 바뀐 만큼 당분간은 적응하는데 고생좀 해야 할듯. 그림판을 어떻게 실행하는지 몰라서 한참을 찾다가 결국은 Win+R mspaint로 실행 시켰음.

인터넷에 부팅 빠르다는 동영상들 많지만, 델미니9에서는 사양이 사양인지라, BIOS POST 8초 + Lock Screen 까지 8초 걸림.

더 보기 >>

[.NET] 달랑 3줄로 동영상 플레이어 만들기

2008-05-22   //   alexken작성   //   기술  //  2 Comments

1. 무작정 Visual Studio 2008을 띄우고 C# WinForm 프로젝트 생성
2. [Add Reference]에서 Microsoft.DirectX.AudioVideoPlayback를 추가해주고(DirectX는 깔려 있어야 함)
3. Form을 더블 클릭하고 다음과 같이 쳐준다.

using Microsoft.DirectX.AudioVideoPlayback;

private void Form1_Load(object sender, EventArgs e){
    Video v = Video.FromFile(@"c:\test.avi");
    v.Owner = this;
    v.Play();
}

4. F5를 누른다.

근데 안된다.

[Debug]-[Exceptions]-[LoaderLock]의 Thrown 항목을 꺼준다.

loaderlock.png
5. F5를 누른다.

ㅋㅋㅋ 성공 ….
form1.jpg

[잡설]
이번 일주일간 WDM 디바이스 드라이버 프로그래밍 교육중이다.
Kernel Mode 프로그램에서는 좀만 잘못하면 블루 스크린…
오랜만에 보는 VisualStudio… 안보던 사이 많이 바뀌었었네…

Safari for Windows

2007-06-12   //   alexken작성   //   기술  //  3 Comments

오늘 레오파드가 발표 되었나 보다.

새로 추가된 기능들 하나하나가 군더더기 없이 다 바랬었던… 기능들로 당장이라도 업그레이드 하고 싶은 정도였다.

근데 놀랍게도, Windows용 사파리가 비록 베타지만 발표된게 아닌가….

속도도 다른 브라우저에 비해 2배 빠르다는 그래프와 함께 “Browse like Wind”

당장 Windows PC에 설치후 기대되는 마음으로 바탕화면의 safari를 클릭했더니만…..

safari.png

아직까지 윈도우즈용 사파리를 구경하지 못했다.

Vista를 위해 그래픽카드 업그레이드

2007-04-06   //   alexken작성   //   기술  //  No Comments

Legend-6200-256MB-64bit-AGP-spec-02.jpg
오늘 그래픽 카드를 업그레이드 했다.

집에 컴터에 Vista를 깔았더니, 아래와 같이 1점의 점수를 받았다.
2년된 컴터에 다른건 뭐 그럭저럭 참겠는데,
정체불명의 굴러다니던 비디오 메모리 32M인 그래픽 카드가 점수를 다 깍아먹고 있었다.
이로인해 에어로가 활성화 되지 않아서,
적당히 찾은 모델이 지포스 6200 이었다.
AGP 타입이므로 향후 새 피씨를 구매할때, 재사용 가능성도 없고 해서,
가능한 싸면서 쓸만한 놈을 찾은게 이놈이다.

2.6이란 기대보다 못미치는 점수를 받았지만,
어차피 3D 게임은 할 계획 없었으므로, 당분간 쭈~욱 가련다.

에어로 시청료는 5만원인 것이다.
vista.png

페이지:12»